2014-09-28 78 views
0

我处于一种我不知道该如何执行的情况。如何在特定的URL中发布ASP.NET MVC 4项目

我在ASP.NET MVC中有一个网站,让我们打电话给kelvinsite.com.br,这个网站是一个asp.net mvc项目。

而且我还有另一个网站,我们会打电话给kelvinproject.com.br,这个网站是另一个项目的aspnet mvc。

我想要做的就是在项目kelvinsite.com.br里面发布网站kelvinproject.com.br,而不是在Visual Studio的同一个项目中合并web项目,我希望两者都保持独立于同一个解决方案中。

所以,网址是:

http://kelvinsite.com.br/kelvinproject

这可能吗?它的名字是什么?

回答

1

这是可能的,但根据您如何定义网址,存在一些潜在的缺陷。您正在寻找的术语是“子站点”,它通常需要在IIS中进行一些工作。你可以做一些与ASP.NET MVC Areas类似的东西,但在这种情况下你并不是真正打包应用程序。

有子网站一个很好的讨论在这里:Sub-Website in IIS - ASP.NET

基本上,你部署的应用程序在IIS上的父应用程序的子文件夹。这意味着您可能必须更改子级上的web.config以删除父级条目等,具体取决于每个.NET版本等。

+1

这就是我想要的。非常感谢!我正在使用Windows Azure网站,他们有一个很好的方法来做到这一点,我在你的答案和[MSDN答案](http://social.msdn.microsoft.com/Forums/azure/en-美国/ 918d4ea1-1bce-498A-9d5a-1f96c1504297 /如何对发布-AN-ASPNET-MVC-4项目功能于一个特定的URL上 - 窗口 - 蔚蓝?论坛= windowsazurewebsitespreview)。谢谢 !!! – 2014-10-01 13:43:11

0

您应该能够发布每个站点完全独立。在服务器上只记住两件重要的事情。 1)确保目录kelvinproject在IIS中被标记为应用程序。 2)您可能需要调整主应用程序中的web.config,以使其设置不会被任何子应用程序继承。您可以使用web.config的元素轻松完成此操作。有一个很好的例子:Scott Hansleman's blog,它非常简单。只要把这些东西放在这个位置上,它就不会被新的应用程序继承。

不要认为他们是一个特定的网站。每一个都是一个独立的Web应用程序,技术上他们彼此不知道任何事情,不关心其他事情。您可以在同一个解决方案中拥有50个项目,而其他人发布的任何项目都无关紧要。

+0

感谢您的回复,但我已经使用了windows azure网站的虚拟目录。 – 2014-10-01 13:44:58

相关问题