将ASP.NET MVC 3Razor应用发布到运行带有IIS 6的Windows Server 2003的远程服务器上

问题描述

| 我已经构建了一个ASP.NET MVC 3 Web应用程序(带有独家Razor / cshtml页面),并且可以在具有IIS Express的本地计算机上正常运行。现在,我试图将其发布到运行Windows Server 2003和IIS 6的远程服务器上,并且该服务器刚刚升级到.NET Framework 4.0。 我能够使用Visual Studio 2010的“发布”对话框(发布方法:FTP)将所有文件成功发布到远程服务器上的正确目录中,并且我已经按照说明包含了运行ASP所需的所有DLL。尚未安装.NET MVC的计算机上,但现在我几乎陷入了困境。 第一个问题是我无权访问远程服务器的IIS。我也许可以让托管公司添加虚拟目录或更改设置,但是我不确定他们知道自己在做什么,目前,我不知道该告诉他们什么。无论如何。 第二个问题是,我需要我的Web应用程序驻留在现有网站内(该Web应用程序基本上是主网站的受保护成员区域)。因此,假装主站点是http://www.foobar.com。我希望通过输入URL http://www.foobar.com/members来访问我的Web应用程序。 问题 是否可以在不访问远程服务器的IIS的情况下发布我的Web应用程序? 如果没有,我到底要告诉托管公司添加或更改IIS中的什么? 项目属性的“ Web”选项卡下的设置会影响发布还是仅影响本地调试?目前,我已将其设置为使用IIS Express,并且项目URL为\“ http:// localhost:7373 / \”。我需要更改这些吗? 假设远程服务器运行的是Windows Server 2003和IIS 6.0,是否可以使用Web Deploy还是仅限于FTP? 如果可以使用Web Deploy,我应该在服务URL中输入什么?我现在所拥有的只是一个URL格式为ftp://www.foobar.com/www的用户名和密码。 如果我需要使用FTP,将必要的文件上传到ftp://www.foobar.com/www/members后,我需要采取什么步骤才能使该应用程序正常工作?我不担心数据库,安全证书,注册表,GAC等,我只想知道在放置http://www.foobar时启动我的Web应用程序主页的必要步骤。 com / members。     

解决方法

您是否看过Scott Hanselman的这篇文章? 除了该文章以外,请在与您几乎相同的环境下阅读StackOverflow上的以下线程。 编辑 第一步应该是让托管公司使用以下参数(IIS 6)来设置虚拟目录: ASP.NET版本:4.0.30319(或更高版本) 本地路径:[主网站的根ftp路径] \\成员 []脚本源访问(未选中) [x]读取(选中) []写入(未选中) []目录浏览(未选中) [x]日志访问(已选中) [x]将此资源编入索引(选中) 申请名称:会员 执行权限:仅脚本 应用程序池:ASP.NET 2.0