更新- 一开始指向错误的目录。感谢Wiktor的提示。仍然无法通过以下方式成功运行 MVC4 应用程序
我正在尝试(现在有一段时间.. :))在我的开发 PC 上设置一个模拟的多租户 webapp。我了解到这对于 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\
- 导航到本地主机: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 的事实...... :)
有任何想法吗?