【发布时间】:2018-02-01 01:01:59
【问题描述】:
我有一个相当大的 ASP.NET MVC 项目,我正在尝试将它部署到远程机器上的 Windows Server 2016 VM。部署的工作原理是我可以进入 IIS 管理器并在Default Web Site 下查看Views、Content 等,但我无法查看网站本身。它默认为 IIS 起始页。
我之前遇到过一些web.config 错误,而我的web.config 中的<modules> 部分导致了内部500 错误。我已经注释掉了以下代码并且它停止了错误:
<modules>
<remove name="TelemetryCorrelationHttpModule" />
<add name="TelemetryCorrelationHttpModule" type="Microsoft.AspNet.TelemetryCorrelation.TelemetryCorrelationHttpModule, Microsoft.AspNet.TelemetryCorrelation" preCondition="integratedMode,managedHandler" />
<remove name="ApplicationInsightsWebTracking" />
<add name="ApplicationInsightsWebTracking" type="Microsoft.ApplicationInsights.Web.ApplicationInsightsHttpModule, Microsoft.AI.Web" preCondition="managedHandler" />
</modules>
但现在Default Web Site 默认恢复到之前的状态,即初始 IIS 网站。这不是缓存问题,多台计算机/浏览器正在访问同一个网站。
这是Default Web Site 的屏幕截图,来自 IIS 服务器:
我对此感到困惑。至少对于内部 500 错误,我知道 我的网站 导致了问题,但这似乎覆盖了我在项目中设置的任何配置。
由于 StackOverflow 的字符限制,我不得不将我的 ApplicationHost.config 复制到 pastebin 链接中:
我在 ASP.NET 部署和 IIS 方面的经验仅限于今天早上,所以我不确定我在寻找什么,任何建议都将不胜感激。
【问题讨论】:
-
您想设置域名/子域还是别名来访问您的网站?
-
没有。该网站位于内部服务器上,尽管我的项目覆盖了
Default Web Site中存在的文件,但仍显示默认网站。 -
我阅读了 ApplicationHost.config,问题是这样的:
检查这些文件是否被删除从网站的根目录。不过,我在回答中写了一个小指南,这样您就可以设置您的网站而不必覆盖默认网站,希望对您有所帮助。 -
在设置 IIS 服务器时,网络管理员没有安装
Application Development。不过,我真的很感谢你的帮助! -
酷!很高兴你修好了。
标签: asp.net-mvc iis