繁体   English   中英

IIS7 403 - 拒绝访问

[英]IIS7 403 - Access Denied

我正在尝试在运行iis7的服务器上部署我在mvc3中构建的网站。 我能够在我的笔记本电脑上本地运行iis7,但是当我尝试将它放在服务器上时,我尝试远程访问它时出现403访问被拒绝错误,并且当我尝试“连接已超时”时从服务器本身查看它。

我确保使用asp_regiis.exe获得最新的.Net 4框架。 我尝试了多个应用程序池,包括默认值。 我允许.net4 isapi。 我已更改允许IUSER,SERVER NETWORK,Authenticated Users访问的权限。 我已经确定默认文档列表与我的笔记本电脑iis7上的相同(工作正常)。

我还有多个其他网站(使用webforms,而不是mvc)在服务器上正常工作。

它可能与我传递给服务器的文件的方式有关吗? 我只是将文件压缩并将它们(并解压缩)放在服务器上,并将iis定向到创建的目录。

我错过了什么?

我上周遇到了这个错误,可能是由许多事情造成的:

  1. 未使用asp_regiis.exe安装或注册正确版本的.NET框架
  2. web.config中的“runAllManagedModulesForAllRequests”设置为false
  3. MVC的正确版本未安装在服务器中
  4. 你有一个忽略你的请求的忽略路线
  5. 您的Application_Start中存在早期异常,并且您的站点无法正常启动

就我而言,我忘记将web.config中的日志目录路径值更改为现有的directoy。

如果是配置错误或应用程序中的错误,您可以做的是在VS中创建一个新的默认MVC项目并将其部署在同一个apppool中。

如果您可以发布它(在VS中,右键单击您的项目并发布)并将其部署到您的网站(您有多个选项),而不是压缩您的应用程序。

之后,对于IIS,它看起来像身份验证的问题。 尝试允许匿名身份验证。 在IIS管理器上,转到您的网站,单击“身份验证”模块并启用“匿名身份验证”。

让我们看看之后会发生什么,即使“超时”问题很奇怪......只是为了确定,默认情况下它被禁用以浏览网站的内容,如果你试图这样做会有403错误。

你把你的应用放在哪里了? 有时可能会出现问题(对于访问配置)将其放在特定文件夹(如程序文件等)等。尝试在根目录下安装它,例如C:\\ Websites \\ MyApp,以便在没有用户权限问题的情况下进行测试。

你应该检查一些事情。

  1. 您是否设置了将文件解压缩为IIS中的应用程序的目录? 该应用程序是否运行.NET 3.5 / 4.0?

  2. 运行上面创建的应用程序的应用程序池的管道是在集成模式还是经典模式下运行?

通常,在部署MVC应用程序时,403不是权限问题。 它告诉你不允许目录浏览。 这是因为如果没有上述两个项目之一(或IIS中的自定义通配符映射),Web服务器就不知道如何处理路由,这是MVC应用程序的基础。

  1. 使用所有默认值创建一个新的MVC 3互联网应用程序。 在本地IIS服务器上运行。
  2. 将应用程序移动到服务器并将其添加为应用程序。
  3. 测试服务器上的本地访问(从IIS管理器浏览80)。
  4. 在找出问题之前,请不要霰弹枪旋转所有权限。
  5. 请参阅我的博客http://blogs.msdn.com/b/rickandy/archive/2011/04/22/test-you-asp-net-mvc-or-webforms-application-on-iis-7-in-30 -seconds.aspx

您需要确保解压缩文件的文件夹具有正确的权限设置。 此外,您是否在该站点中进行了身份验证设置?

在设置网站时,您是否通过单击测试连接测试了IIS设置。 你有两个绿色的蜱虫吗? 如果没有,请检查您的验证设置。 文件夹访问设置和应用程序池设置。

如果是aspx文件确保在IIS上设置了默认页面,如果没有安装asp.net应用程序。 默认安装后,将创建aspx文件。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM