2012-03-26 189 views
1

我有一个MVC4 Web应用程序MVC4网站/ Web应用程序推荐IIS目录结构

在设置它在IIS7.5我增加了应用程序的“默认网站”和http://localhost/myApplication

下设立一个虚拟目录

但是,这迫使我改变了我以前在卡西尼中称为“/ Home/Index”的许多控制器调用(特别是js ajax调用),现在我不得不将它们更改为“/ myApplication/Home/Index”他们在我的本地IIS上工作。

现在,当我将它发布到远程托管服务器时,我必须将其更改回“/ Home/Index”才能使其工作。

这不可能是最有效的方法来遍历开发 - >测试 - >生产周期。我错过了什么步骤?

我试图创建的应用程序上只是http://localhost/虚拟目录不附加应用程序的名称,这样我可以在所有三个阶段称之为“/首页/索引”,但它抱怨说http://localhost/已映射到的Inetpub/wwwroot文件。

谢谢你的时间。

回答

2

的步骤是这样的:

  1. 发布您的网站中的Inetpub/wwwroot的新文件夹(或您的应用程序保存的地方),如“的Inetpub/wwwroot文件/ MYAPP”
  2. 转到IIS管理,创建一个新的网站,为其分配任何空闲端口(如11001或其他东西,至少> 1024),并将其指向步骤1中的文件夹。将其绑定到所有可用IP地址或127.0.0.1
  3. 启动网站。它使用http://localhost:11001/(或您设置的所有其他端口)

问题是,默认情况下,任何浏览器使用端口80来请求一个网页,并且该端口采取的是默认的Web站点

  • 访问。您必须手动覆盖它或在另一个端口上创建站点。 IIS通常会警告你端口冲突。

  • +0

    嗯,这几乎似乎工作,直到我发布到我的远程托管后得到了403禁止。发布到本地IIS7.5的作品,但不是远程服务器。你能建议我该怎么办? – parliament 2012-03-26 08:22:56

    +0

    等一下,nvm。我意外地发布到mysite/wwwroot/wwwroot ....一切工作非常感谢这么多向我展示如何创建一个新网站 – parliament 2012-03-26 08:32:44

    +0

    不客气:) – 2012-03-26 19:00:22

    1

    如果您不想在地址中包含端口号,或者您可以在端口80上使用主机头。您可能必须为提供给该站点的主机头创建本地主机条目。