在使用ASP.NET,C#和MVC模式开发我的网站之后,我现在已经到了将我的网站部署到一个真正的网站的地步。服务器(不再是Visual Studio的IIS快递)。
所以,我尝试使用Web部署,配置了一切,它似乎已经正确完成,因为我现在从服务器端看到我的所有文件。
但遗憾的是,当我尝试访问该网站时,我遇到错误403(来自客户端和服务器),服务器给了我更多信息:
"错误403.14 - 禁止 - 服务器未配置为显示 该目录的文件"
如果我尝试使用url,就像我使用Visual Studio一样(例如,url / Views / Home /),它会返回:
Error 500.19
28: <system.webServer>
29: <handlers>
30: <remove name="BlockViewHandler"/>
这里涉及的web.config文件:(有点)
<system.webServer>
<handlers>
<remove name="BlockViewHandler"/>
<add name="BlockViewHandler" path="*" verb="*" preCondition="integratedMode" type="System.Web.HttpNotFoundHandler" />
</handlers>
我不知道问题出在哪里,因为这个网站在Visual Studio中运行良好。
部署在发布模式下完成。
编辑:我启用了目录浏览,当我进入“视图”时,它返回相同的错误500。夹
答案 0 :(得分:0)
这个问题可能有很多原因,我也遇到了这个问题,这是由于连接字符串,我使用的是 Integrated Security = true
1)要解决此问题,我在连接字符串中添加了Sql User,它解决了我的问题
e.g。你的连接字符串应该是
用户ID = testuser;密码= testpassword;初始目录= testdb;数据源= testserver
2)另一个原因可能是您的MVC项目与您托管网站的应用程序池中有不同的.Net框架
答案 1 :(得分:0)
我通过从服务器中删除“开发”功能解决了我自己的问题,重新启动,再次添加它们就没事了。