更新 - 首先指向错误的目录。感谢您提示 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文件,以查看此位是否有效。
酷,第一次证明生命。
下一步:使用在VS2012中创建的MVC4 webapp实现此功能。
我启动了一个新的MVC4 webapp并将其存储在:
C:\Azure\Websites\MvcApplication1
我只是使用默认生成的网站进行测试,因此我按了F5
并验证该网站是在firefox中打开的。所以我们的目标是让它从IIS中运行。
test2
(端口8082)C:\Azure\Websites\MvcApplication1\MvcApplication1\
HTTP错误500.21 - 内部服务器错误 Handler" 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 ......:)
有什么想法吗?
答案 0 :(得分:1)
C:\的Windows \ Microsoft.NET \ Framework64 \ v4.0.30319 \ ASPNET_ISAPI.DLL
C:\的Windows \ Microsoft.NET \框架\ v4.0.30319 \ ASPNET_ISAPI.DLL
它有效。终于来了!
感谢Wiktor
答案 1 :(得分:0)
首先根据this site配置IIS:
IIS 7.5处理程序" extensionlessurlhandler-integrated-4.0
"有一个糟糕的模块" managedpipelinehandler
"在其模块列表中
对于上述问题,您必须转到控制面板>>已安装的程序和功能>>双击修复.NET Framework。
答案 2 :(得分:0)
首先将IIS配置为 手动配置 打开控制面板,然后单击程序和功能»打开或关闭Windows功能。 打开Internet信息服务。
在“Internet信息服务”下,启用以下功能: Web管理工具»IIS 6管理兼容性»IIS Metabase和IIS 6配置兼容性。
Web管理工具»IIS管理控制台,IIS管理脚本和工具以及管理服务。
在万维网服务下,启用以下内容: 应用程序开发功能下的所有功能,但服务器端包含除外。 常见的HTTP功能»默认文档,目录浏览,HTTP错误,Http重定向,静态内容。 安全性»基本身份验证,请求筛选,Windows身份验证。
在Microsoft .NET Framework 3.5.1下»Windows Communication Foundation HTTP激活。
创建网站后,打开Internet信息服务(IIS)管理器。 展开服务器节点。 展开“站点”节点,然后单击您的网站。
在右侧的IIS部分中,双击“身份验证”。 执行以下操作之一:
如果您使用的是表单身份验证,请确保已启用匿名身份验证和表单身份验证,并禁用所有其他身份验证。
如果您使用的是基于声明的身份验证,请确保仅启用匿名身份验证并禁用所有其他身份验证。
再次单击您的网站,在IIS部分中,双击“处理程序映射”。 确保已为* .svc和* .xamlx启用了处理程序映射,并将可执行路径设置为以下之一:
对于64位操作系统:%windir%\ Microsoft.NET \ Framework64 \ v4.0.30319 \ aspnet_isapi.dll 对于32位操作系统:%windir%\ Microsoft.NET \ Framework \ v4.0.30319 \ aspnet_isapi.dll 关闭Internet信息服务(IIS)管理器。