注意事项:
1、IIS程序应用池更换为4.0net集成
2、网站目录加入IIS帐号的权限(基本设置里是administrators组帐号)注:服务器拒绝时是这里的问题
3、在“ISAPI和CGI限制”里设置asp.net 4.0为允许状态
4、如果是先安全IIS,后安装.net的话,安装完后应运行%windir%Microsoft.NETFrameworkv4.0.30319aspnet_regiis.exe -i
5、启用应用池里的32位支持
关于MVC5项目中的设置
1、移除引入Microsoft.Web.Infrastructure.dll
如出现未能加载文件或程序集“Microsoft.Web.Infrastructure,则复制Microsoft.Web.Infrastructure.dll到BIN日录下
2、在NuGet管理器里卸载两个组件
- Microsoft.CodeDom.Providers.DotNetCompilerPlatform
- Microsoft.Net.Compilers
3发布到服务器!发布时可以用system file匹配
(注意:MVC3是.net4.0 、MVC4是.net4.5、MVC5是.net4.5.1)
注意在做用EF的时候会漏掉EntityFrameworkSqlServer.dll,解决方法是加包生成后,考备,删后放到bin里
关于CentOS支持MVC5的设置,在这里引用https://www.cnblogs.com/jjg0519/p/6268350.html的文章
刚看到一个年初的一个帖子说VS2015新建的MVC5项目部署后报错,自己捣鼓了一下,发现是Roslyn编译器的错误,简单处理后运行成功,分享如下: 新建一个MVC5的项目,保持不要动,执行以下几个步骤 第1步:移除bin下的Microsoft.Web.Infrastructure.dll 第2步:项目上右键管理NuGet程序包,打开管理器,按顺序卸载以下两个组件 2.1 Microsoft.CodeDom.Providers.DotNetCompilerPlatform 2.2 Microsoft.Net.Compilers 第3步:发布你的项目并布置到jexus服务器 第4步:打开浏览器,输入你的URL 这几天我也在倒腾. 介绍一下我目前的情况: Mono用的4.2.3.4 Jexus 5.8.1 CentOS 6.7 发现问题如下: 1. NET 4.6 + MVC5.2.3 无法运行,需要切换到Net4.5 + MVC5.2.0 2. Microsoft.Web.Infrastructure.dll 没有移除也成功了 3. 从Nuget上下载下来的System.Web.Webpages.dll 几个相关的dll 中间的pages 那个p是小写的,需要变成大写 这一点真的折腾了我很久 4. 另外Bootstrap等几个前端框架里面也有一些不区分大小写的,有一些样式无法显示,我把Jexus的不区分大小写打开就好了.