原本的伺服器為IIS7.5,網站是使用asp.net 2.0,將應用程式集區改採 asp.net v4.0 後,雖然頁面都可正常執行,但是有個奇怪的現象就是「圖片」都顯示不出來,全變成紅色叉燒包,如果你直接測試其中某圖片的URL,會得到如下的錯誤回應文字範本:HTTP錯誤 403.2-Forbidden 您嘗試檢視的資源沒有讀取存取權。

1372149400-3035466923_l  

      然後我到伺服器上檢查了所有權限,也重設所有相關權限,依然是無法解決,還是出現一樣的錯誤,但特別的是只要將應用程式集區改回asp.net 2.0的模式,一切問題就解決了,當然這不會是我要的解決方式,所以我就繼續尋找問題所在根源。

       

 

      後來,利用HttpWatch來觀察發現,原來不只圖片,其實連CSS都沒有權限讀取(如下圖),只不過我的登入頁面用到的CSS效果很少,所以幾乎感覺不出差別

圖片 8

 

 

      找了很多相關的資料,才真正找到解決方式,原來這是未指定「靜態檔案」的「處理常式對應」的權限,所造成的問題。

設定步驟如下:

     1.首先先在自己網站或應用程式下,雙擊處理常式對應的圖示,如下圖

圖片 3-1

 

    2.開出的「處理常式對應」如下圖,選擇最下方「StaticFile」,然後請點選右方「動作」列中的「編輯功能權限

   3.隨後會開出如下同中間「編輯功能權限」的小對話框,請依需求,最少要勾選「讀取」權限,這樣一些靜態檔案,包括圖黨與CSS才能夠順地讀取並展展現

  圖片 11  

arrow
arrow

    Byron 發表在 痞客邦 留言(0) 人氣()