在 windows 服务器上安装 asp.net mvc 应用程序
Install asp.net mvc application on windows server
我有以下问题:
有 windows 服务器 2008 r2
它安装了 iis 7.5
我把我的应用程序移到了那里(它是 asp.net mvc 5 应用程序),在服务器上安装了 .net 4.5 框架
运行 在 cmd
中执行命令
%windir%\Microsoft.NET\Framework64\v4.0.30319\aspnet_regiis.exe -ir
也试过 %windir%\Microsoft.NET\Framework\v4.0.30319\aspnet_regiis.exe -ir
但它仍然抛出异常:
403 - 禁止访问:访问被拒绝。
您无权使用您提供的凭据查看此目录或页面。
我启用了目录浏览,它唯一能做的就是浏览文件夹。但是浏览的是web应用,不是文件目录。
谁能告诉我我错过了什么?
IIS 配置:
更新 1
IUSR 和 IIS_IUSRS 都拥有完全控制权
我还尝试在我的应用程序所在的文件夹上添加具有完全控制权的所有人,但仍然相同
确保 MVC Dll 包含在项目的生成输出中。
也尝试将此代码添加到 web.config
的 system.webserver 部分
<modules runAllManagedModulesForAllRequests="true">
https://www.iis.net/configreference/system.webserver/modules
<modules runAllManagedModulesForAllRequests="true" /> Meaning
如果您尝试通过启动 http://yourdomain.com/ 来测试您的网站,那么它将像您一样显示所有文件 "Browsing the Directory",您必须添加一个 默认文档 - 这是您在 Web 应用程序设置中的主页或登录页面。
在 IIS 管理器 上,单击您的站点,在右窗格中的 IIS 下,单击 默认文档,然后设置要先显示的页面。
"403 - Forbidden: Access is denied" 表示 IIS 无权访问应用程序文件夹中的资源。这通常是 IIS 用来访问资源的用户的问题。
作为测试:授予 "everyone" 应用程序所在目录的全部权限。如果可行,请删除 "everyone" 并授予用户 IIS_IUSRS 读取目录资源的权限(也许该用户需要在 App_Data 文件夹中写入的权限)。
转到您的应用程序的已发布文件夹,并为 iis 用户授予对该文件夹的编辑更新访问权限,然后它将起作用,
右键单击文件夹
单击属性,然后单击安全,然后完全控制 iis 用户。
我有以下问题:
有 windows 服务器 2008 r2
它安装了 iis 7.5
我把我的应用程序移到了那里(它是 asp.net mvc 5 应用程序),在服务器上安装了 .net 4.5 框架
运行 在 cmd
中执行命令%windir%\Microsoft.NET\Framework64\v4.0.30319\aspnet_regiis.exe -ir
也试过 %windir%\Microsoft.NET\Framework\v4.0.30319\aspnet_regiis.exe -ir
但它仍然抛出异常: 403 - 禁止访问:访问被拒绝。 您无权使用您提供的凭据查看此目录或页面。
我启用了目录浏览,它唯一能做的就是浏览文件夹。但是浏览的是web应用,不是文件目录。
谁能告诉我我错过了什么?
IIS 配置:
更新 1 IUSR 和 IIS_IUSRS 都拥有完全控制权 我还尝试在我的应用程序所在的文件夹上添加具有完全控制权的所有人,但仍然相同
确保 MVC Dll 包含在项目的生成输出中。
也尝试将此代码添加到 web.config
的 system.webserver 部分<modules runAllManagedModulesForAllRequests="true">
https://www.iis.net/configreference/system.webserver/modules
<modules runAllManagedModulesForAllRequests="true" /> Meaning
如果您尝试通过启动 http://yourdomain.com/ 来测试您的网站,那么它将像您一样显示所有文件 "Browsing the Directory",您必须添加一个 默认文档 - 这是您在 Web 应用程序设置中的主页或登录页面。 在 IIS 管理器 上,单击您的站点,在右窗格中的 IIS 下,单击 默认文档,然后设置要先显示的页面。
"403 - Forbidden: Access is denied" 表示 IIS 无权访问应用程序文件夹中的资源。这通常是 IIS 用来访问资源的用户的问题。
作为测试:授予 "everyone" 应用程序所在目录的全部权限。如果可行,请删除 "everyone" 并授予用户 IIS_IUSRS 读取目录资源的权限(也许该用户需要在 App_Data 文件夹中写入的权限)。
转到您的应用程序的已发布文件夹,并为 iis 用户授予对该文件夹的编辑更新访问权限,然后它将起作用, 右键单击文件夹 单击属性,然后单击安全,然后完全控制 iis 用户。