【发布时间】:2013-02-02 10:50:28
【问题描述】:
已更新 - 一开始指向错误的目录。感谢 Wiktor 的提示。通过
仍然没有成功运行 MVC4 应用程序我正在尝试(现在有一段时间.. :))在我的开发 PC 上设置一个模拟的多租户 web 应用程序。我了解到这对于 Visual Studio 的内部网络服务器是不可能的,所以我正在尝试设置 IIS。
我在我的主机中添加了fake 租户。
127.0.0.1 localhost
127.0.0.1 tenant1.mydomain.com
127.0.0.1 tenant2.mydomain.com
在 IIS 中,我创建了一个新网站 test(端口 8081),并将其指向 C:\Azure\Websites\。在该目录中,我添加了一个Hello World html 文件,以查看该位是否有效。
- 我导航到 localhost:8081 => Hello world
- 我导航到了tenant1.mydomain.com:8081 => Hello world。
酷,生命的第一个证明。
下一步:使用在 VS2012 中创建的 MVC4 webapp 来实现这一点。
我启动了一个新的 MVC4 webapp 并将其存储在:
C:\Azure\Websites\MvcApplication1
我只是使用默认生成的网站进行测试,所以我按下F5并验证该网站是在firefox中打开的。所以目标是让这个从 IIS 工作。
- 创建了一个新网站
test2(8082端口) - 将 test2 应用程序池设置为 .net4.0
- 将物理目录指向
C:\Azure\Websites\MvcApplication1\MvcApplication1\ - 导航到 localhost:8082
HTTP 错误 500.21 - 内部服务器错误 处理程序“ExtensionlessUrlHandler-Integrated-4.0”的模块列表中有一个错误模块“ManagedPipelineHandler”
卸载 ASP.NET 并重新安装。结果相同。
当我更改 web.config 时
preCondition="classicMode,runtimeVersionv4.0,bitness32"
到
preCondition="integratedMode,runtimeVersionv4.0,bitness32"
然后我得到这个错误:
HTTP 错误 404.2 - 未找到 由于 Web 服务器上的 ISAPI 和 CGI 限制列表设置,无法提供您请求的页面。
我能否强调一下,我在 IIS 配置方面是一个 n00b ...... :)
有什么想法吗?
【问题讨论】:
-
不要指向 mvcapplication\bin 而是指向 mvcapplication。
-
嗯,好的。给了我一个新错误,我将对其进行调查(HTTP 错误 500.21 - 内部服务器错误)
-
您的应用程序池是否设置为 asp 4.0?
-
是的 apppool 正在运行 .net4.0
-
你学了一次,然后半夜醒来就做。
标签: c# visual-studio-2010 iis asp.net-mvc-4 multi-tenant