在"发布WEB"窗体中,发布方法选择"文件系统",目标位置我们选择发布到C:\inetpub\wwwroot\WMS这个文件夹下面。如上图
接下来我们打开IIS,首先创建应用程序池,名称可以自定义,.NET 选择 4.0版本。点击确定,就可以在IIS中的应用程序池里面看到MVCPOOL了
创建应用程序池
接下来是新建网站,右键添加网站,网站名称自定义,应用程序池选择MVCpool,点击确定,就可以在IIS中浏览网站了
发布好以后,访问出现如下错误:
未能加载文件或程序集“xxx”或它的某一个依赖项。试图加载格式不正确的程序
操作系统是64位的,但发布的程序引用了一些32位的ddl,所以出现了兼容性的问题。
解决方案:IIS——应用程序池——高级设置——启用32位应用程序 :true
未能加载文件或程序集“Oracle.DataAccess”或它的某一个依赖项。试图加载格式不正确的程式
iis所在的服务器是64的,而我的 odp.net是装的32.所以对应的 Oracle.DataAccess.dll也应该是32位的,这里涉及iis的配置了。
dll有了,32位的,系统是64位的。这个在iis里有一个设置如下如:
先看看项目使用的应用程序池是哪一个:
然后去应用程序池去配置
设置启用32位应用程序 为true
OK搞定。再浏览 一切正常。
这里还记录下MVC3应用程序在iis7中的部署需要注意的地方:
1.添加MVC解析
首先确保ASP.NET MVC3已安装好,然后检查站点的处理程序映射,看是否存在下列映射:
ExtensionlessUrlHandler-Integrated-4.0
ExtensionlessUrlHandler-ISAPI-4.0_32bit
ExtensionlessUrlHandler-ISAPI-4.0_64bit
如果映射存在,请检查应用程序是否分配给了.NET Framework4.0的应用程序池。
如果映射不存在,你可以以管理员运行下面的命令注册:
32位机器:
C:\Windows\Microsoft.NET\Framework\v4.0.30319\aspnet_regiis.exe -i
64位机器:
C:\Windows\Microsoft.NET\Framework64\v4.0.30319\aspnet_regiis.exe -i
2.然后检查 bin目录里是否有System.Web.Mvc。dll.没有的话,拷进来,或者是按上面说的方法去重新生成下项目。
3.ASP.NET版本选择4.0.30196;