加載我所有的應用程序都工作正常,但突然IIS下的所有網站都沒有加載CSS,圖片,腳本。它重定向到登錄頁面。CSS,圖片,JS不是在IIS
如果我登錄它工作正常。例如mysite.com/Account/LogOn?ReturnUrl=%2fpublic%2fimages%2ficons%2f41.png
在我的本地機器它而不登錄工作正常。
加載我所有的應用程序都工作正常,但突然IIS下的所有網站都沒有加載CSS,圖片,腳本。它重定向到登錄頁面。CSS,圖片,JS不是在IIS
如果我登錄它工作正常。例如mysite.com/Account/LogOn?ReturnUrl=%2fpublic%2fimages%2ficons%2f41.png
在我的本地機器它而不登錄工作正常。
據窗戶權限問題我移動文件夾完蛋了繼承錯誤的權限。當我移動到wwwroot文件夾並向iis用戶添加權限時,它開始正常工作。
我有同樣的問題,只是將項目文件從'desktop'移動到'wwwroot'文件夾,另外我已經添加了對網絡服務的完全控制,這與應用程序有關池。 – mihkov
你可能在你的web.config啓用Windows身份驗證。在本地機器上,您的Windows憑據會自動傳遞並且可以正常工作。在現場,你被視爲一個匿名用戶(IE設置可以控制這個,但不要修改這個,除非你真的知道你在做什麼)。
這會導致如下:
這不破,只是按預期運行,但要「修理」這樣的:
驗證模式是Forms不是窗口?應用程序Web配置文件覆蓋機器配置?在IIS中是否有任何設置導致這種情況? –
表單身份驗證還會觸發登錄提示並阻止提供腳本和圖像等資源。查看您需要對web.config進行的特定更改的其他答案。在IIS中保存設置將修改Web配置。 –
我自己解決。當我在我的網絡上共享wwwroot文件夾時出現問題。它改變目錄的權限。當我取消共享並將權限設置爲默認值時。它解決了:)感謝蒂姆 –
添加到您的web.config
<location path="Images">
<system.web>
<authorization>
<allow users="*" />
</authorization>
</system.web>
</location>
這似乎不再在IIS 8中工作。 –
我已經在IIS 8 Express中測試過,它不起作用。 – VansFannel
路徑是相對的,有時添加根將解決此問題。嘗試設置路徑到「」〜/ Images「' – StuperUser
使用該在你的web.config文件中的配置部分:
<location path="images">
<system.web>
<authorization>
<allow users="*"/>
</authorization>
</system.web>
</location>
<location path="css">
<system.web>
<authorization>
<allow users="*"/>
</authorization>
</system.web>
</location>
<location path="js">
<system.web>
<authorization>
<allow users="*"/>
</authorization>
</system.web>
</location>
這可能不會回答你的問題,但我一直在用新的IIS安裝時出現同樣的症狀。 CSS,JS和圖像沒有顯示出來。原因是「靜態內容」角色未安裝在IIS 7.5中。
你可能會遇到不同的問題,我的問題是當我從inetpub移動目錄時,當我恢復我的問題被修復時,它將刪除權限。 –
的問題可能是IIS不提供靜態內容,您可以在這裏設置:
來源:http://adilmughal.com/blog/2011/11/iis-7-not-loading-css-and-image/
我有同樣的問題,未經身份驗證的頁面將不會加載CSS ,JS和圖像,當我在Windows Server 2012 R2上的IIS 8.5中的ASP.Net 4.5中安裝我的Web應用程序時。
的建議然而,似乎沒有什麼解決的問題。最後,我厭倦了將匿名用戶的身份設置爲App Pool Identity,並開始工作。
我撞我的頭幾個小時,希望這個響應將保存爲我的同胞開發商的痛苦。
我真的很想知道爲什麼這是行得通的。有什麼想法嗎?
要解決這個問題:
轉到Internet信息服務(IIS)
點擊你的網站,你嘗試在
加載圖像在IIS部分,打開身份驗證菜單和啓用Windows身份驗證。
對我來說,在web.config
加入這個解決這個問題的
<system.webServer>
<modules runAllManagedModulesForAllRequests="true" >
<remove name="UrlRoutingModule"/>
</modules>
</system.webServer>
一個可能的原因是應用程序預計將在端口443(標準的SSL端口)和端口443運行已在使用。開發人員試圖在Skype運行在他們的計算機上運行我們的應用程序時,我已經遇到過好幾次了。令人難以置信的是,Skype運行在443端口。這在我看來是一個可怕的設計缺陷。如果您看到您的應用程序試圖運行在444而不是443上,請關閉Skype,問題就會消失。
在使用生產站點的副本時,我在本地主機測試環境中開發站點時發現了一個有用的建議。請確保您註釋掉規範標籤:
<!--<base href="http://www.example.com/">//-->
我有一個類似的錯誤,我的控制檯看上去像這樣:
我的問題是,我跑我的網站的一個子文件夾,因爲該公司使用一個頂級域名和沒有子域。就像這樣:
host.com/app1
host.com/app2
我的代碼看起來像這樣用來對包括本地主機上工作得很好腳本,但不是在APP1或APP2:
<link rel="stylesheet" type="text/css" href="/Content/css/font-awesome.min.css" />
增加了一個波浪符號~
爲src,然後一切工作:
<link rel="stylesheet" type="text/css" href="~/Content/css/font-awesome.min.css" />
的~
VS /
說明:
/
- 站點根目錄~/
- 應用/
將返回該網站(http://host.com/
)根的根目錄下,
~/
將返回應用程序的根目錄(http://host.com/app1/
)。
該死的男人你節省了我的一天 – Avinash
如果您嘗試了上述所有解決方案,仍然有問題,可以考慮使用ASP.NET的方法ResolveClientUrl()。
例如腳本:
而不是使用
<script src="~/dist/js/app.min.js" ></script>
使用方法
<script src="<%= ResolveClientUrl("~/dist/js/app.min.js") %>" ></script>
這是我的解決方案,爲朋友我幫助的工作!
我的痛苦的時刻,是由於在web.config中定義MIME類型。我需要這個開發服務器,但本地IIS討厭它,因爲它重複MIME類型......一旦我從web.config中刪除這些問題,js,css和圖像未加載的問題就消失了。
很難相信它可以是重複的MIME類型!我搜索了至少一個小時,嘗試不同的用戶權限等,但它最終被重複MIME在我的web.config: - | –
錯標籤,而不是真正的問題... – Reniuz
回滾到標記的版本,因爲我覺得* *我知道是什麼原因造成這種現象與標籤有關。如果沒有,我會投票結束。 –
這是沒有問題,這個網絡配置我已經嘗試了所有的答案。我認爲這是問題,因爲IIS的所有站點工作正常之前,我部署一個應用它影響所有在IIS –