簡體   English   中英

Azure C#部署腳本變得不可訪問

[英]Azure C# Deployment Scripts become inaccessible

我最近在Azure上構建並部署了我的第一個C#MVC網站,但發現腳本文件夾不可訪問。 CSS路徑正常。 如何在Azure中設置腳本文件夾的權限?

在站點的localhost版本中,腳本用作:

<script src="/scripts/jquery-3.1.1.js"></script>
<script src="/scripts/jquery.validate.js"></script>
<script src="/scripts/jquery.validate.unobtrusive.js"></script>
<script src="/scripts/jquery.timeago.js"></script>
<script src="/scripts/bootstrap.js"></script>
<script src="/scripts/frontend.js"></script>

在天藍色版本中,全部變成了:

<script src="/scripts?v=8-nQ5fLPOWbFbJ3aNGN9S-Cax5jWLtBVGkIQKVKaKMc1"></script>

為了澄清原始問題,如果我直接解決這些問題,我可以訪問各個javascript文件。 它只是我無法訪問的天藍色化腳本標簽。

您可以使用FTP或Kudu找到scripts文件夾和腳本文件嗎?

在此處輸入圖片說明

如果找不到它們,則意味着這些腳本尚未發布到Azure Web App。 發布Web應用程序之前,請確保已將Build Action屬性設置為這些腳本文件的“ Content”。

在此處輸入圖片說明

如果這些文件存在於Azure Web App中,並且您無法使用URL進行訪問,請確保用於尋址腳本文件的URL是正確的。 例如,如果腳本文件夾位於wwwroot文件夾下。 要訪問腳本文件夾下的文件,URL應為

http://yourwebsite.azurewebsites.net/scripts/scriptfile.js

<script src =“ / scripts?v = 8-nQ5fLPOWbFbJ3aNGN9S-Cax5jWLtBVGkIQKVKaKMc1”>

您在項目中使用腳本包。 請檢查您的項目,App_Start文件夾下有一個BundleConfig文件。

如果將項目發布到Web服務器或在web.config中將debug屬性更改為false,則腳本的URL將更改為較高格式。

<compilation debug="false" targetFramework="4.6.2" />

要解決您的問題,請確保在您的Web項目上安裝了Microsoft.Web.Optimization DLL,並在web.config中的<system.webServer> <modules>標記下添加以下配置。

<add name="BundleModule" type="System.Web.Optimization.BundleModule" />

如果要禁用腳本包,可以在Global.asax文件的Application_Start方法中將EnableOptimizations屬性設置為false。

protected void Application_Start()
{
    BundleTable.EnableOptimizations = false;
}

不要忘記在Startup.cs中設置app.UseStaticFiles()

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM