繁体   English   中英

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

[英]Publish ASP.NET MVC 3 (Razor) app onto remote server running Windows Server 2003 with IIS 6

我已经构建了一个 ASP.NET MVC 3 web 应用程序(带有专门的 Razor/cshtml 页面),它在我的本地机器上运行良好,使用 IIS Express。 现在我正在尝试将它发布到运行 Windows Server 2003 和 IIS 6 并且刚刚升级到 .NET Framework 4.0 的远程服务器。

我能够使用 Visual Studio 2010 的“发布”对话框(发布方法:FTP)成功地将所有文件发布到远程服务器上的正确目录,并且我已按照说明包含在机器上运行 ASP.NET MVC 所需的所有 DLL没有安装它,但现在我几乎被卡住了。

第一个问题是我无法访问远程服务器的 IIS。 也许可以让托管公司添加虚拟目录或更改设置,但我不确定他们知道自己在做什么,目前,我也不知道该告诉他们什么。

第二个问题是我需要我的 web 应用程序存在现有站点中(web 应用程序基本上是主网站的受保护成员区域)。 所以,假设主站点是http://www.foobar.com 我希望通过输入 URL http://www.foobar.com/members来访问我的 web 应用程序。

问题

  1. 是否可以在不访问远程服务器的 IIS 的情况下发布我的 web 应用程序?
  2. 如果没有,我需要告诉托管公司在 IIS 中添加或更改什么?
  3. 项目属性 Web 选项卡下的设置是否影响发布或仅影响本地调试? 目前,我将其设置为使用 IIS Express,项目 URL 是“http://localhost:7373/”。 我需要改变这些吗?
  4. Given that the remote server is running Windows Server 2003 and IIS 6.0, is it possible to use Web Deploy or am I limited to FTP?
  5. 如果我可以使用 Web Deploy,我应该为服务 URL 放置什么? 我现在只有一个 URL 格式为ftp://www.foobar.com/www以及用户名和密码。
  6. 如果我需要使用 FTP,一旦必要的文件上传到ftp://www.foobar.com/www/members ,我需要采取哪些步骤才能使应用程序正常工作? 我不担心数据库、安全证书、注册表、GAC 等,我只想知道当我输入http://www.foobar.com时让我的 web 应用程序主页出现所需的步骤/成员

你看过 Scott Hanselman 的这篇文章吗? 除了那篇文章,请在与您几乎相同的环境中阅读 StackOverflow 上的以下线程

编辑

您的第一步应该是让托管公司使用以下参数(IIS 6)设置虚拟目录:

  • ASP.NET 版本:4.0.30319(或更高版本)

  • 本地路径:[主网站的根 ftp 路径]\Members

  • [ ] 脚本源访问(未选中)

  • [x] 阅读(选中)
  • [ ] 写(未选中)
  • [ ] 目录浏览(未选中)
  • [x] 日志访问(选中)
  • [x] 索引此资源(选中)

  • 申请名称:会员

  • 执行权限:仅脚本

  • 应用程序池:ASP.NET 2.0

暂无
暂无

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

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