部署一个mvc项目到iis的时候提示有下面这样的错误,

看提示是Microsoft.CodeDom.Providers.DotNetCompilerPlatform,权限问题。

我是第一次遇到,所以只能搜索,显示在中文网站上搜索,发现基本上都是垃圾信息,很多人不验证一下就直接把别人的总结转载了,看似有很多信息,其实最后归源都是一个人写的。

用英文搜索,在stackoverflow(神网站)上看到一篇问答的,提问者遇到的问题和我是类似的。

[https://stackoverflow.com/questions/33319675/the-codedom-provider-type-microsoft-codedom-providers-dotnetcompilerplatform-cs](https://stackoverflow.com/questions/33319675/the-codedom-provider-type-microsoft-codedom-providers-dotnetcompilerplatform-cs]

第一名的答案大致意思就是这是mvc模版默认引入nuget的roslyn库造成的,所以去除掉相关的引用就可以了,我试了一下,确实就可以运行了。

但是这个解决方案总感觉不对劲,不是再从根本上解决问题,而是在回避问题。 微软默认引入roslyn的库说明这是是可以用的,现在不能用从提示上看是权限问题,那就应该是权限问题了。

继续搜索,看到了这篇文章

https://blogs.msdn.microsoft.com/webdev/2014/05/12/enabling-the-net-compiler-platform-roslyn-in-asp-net-applications/

介绍的是roslyn编译器在asp.net中的应用。

回过头去看stackoverflow的那个回答,发现底下有个低赞的回答提到了要添加IIS_IUSRS,我尝试了一下,果然OK了,看来就是权限问题了。

顺便研究了一下IIS权限,即对对应文件夹的权限。

有两个权限比较重要,匿名用户IUSR和和用户组IIS_IUSRS,

其中IUSR认证的时候不需要密码,匿名;

而IIS_IUSRS能够让AppPool拥有访问系统资源的足够权限,所有在这个用户组里的用户都可以。

https://www.cnblogs.com/wangqiideal/articles/4717286.html

记录一个IIS的服务器错误问题的解决方案的更多相关文章

  1. 记录一个bootstrap惨痛的错误

    记录一个bootstrap的错误,这个错误因为我删除了一个class就导致了页面上显示的错误,这是一个惨痛的教训,特此记录,提醒自己在做前端的修改时,一定要慎之又慎.如果真的要做改动,改完之后也要测一 ...

  2. ASP.NET全局错误处理和异常日志记录以及IIS配置自定义错误页面

    应用场景和使用目的 很多时候,我们在访问页面的时候,由于程序异常.系统崩溃会导致出现黄页.在通常的情况下,黄页对于我们来说,帮助是极大的,因为它可以帮助我们知道问题根源,甚至是哪一行代码出现了错误.但 ...

  3. web api 记录部署IIS获取服务器地址的类型

    获取服务器地址类型分多种,以下记录 1.HttpContext.Current.Server.MapPath("~/File") 返回的值为 D:\3Project\Code\Mo ...

  4. 记录一个很傻的错误(C++)

    使用的vscode写代码,导入了vector,memory,然后忘了导入string.但是代码中能够提示std::string也就让我忘了导入string.然后就莫名其妙的报错了.找了很久的错.记录下 ...

  5. 新装iis 页面503错误 DefaultAppPool停止解决方案

    配置:应用程序池-选择要配置的应用池-高级设置-标识-选择LocalSystem

  6. IIS配置ASP.NET和服务器错误页

    以下两种方法均为全站出错处理 方法一: 1.在Web.config配置文件中<system.web></system.web>中添加<customErrors mode= ...

  7. XP中IIS“HTTP 500 - 内部服务器错误”解决方法

    我先把主要过程叙述一下,叙述完有每个问题的具体操作方法. 今天我在XP上安装IIS,运行网站出现"HTTP 500 - 内部服务器错误". 打开HTML没有问题,打开ASP文件时就 ...

  8. IIS MVC 发布错误 403.14-Forbidden Web 服务器被配置为不列出此目录的内容

     转:http://blog.csdn.net/csethcrm/article/details/37820135 IIS MVC 发布错误 403.14-Forbidden Web 服务器被配置为不 ...

  9. asp.net发布到IIS中出现错误:处理程序“PageHandlerFactory-Integrated”在其模块列表中有一个错误模块“ManagedPipelineHandler”

    asp.net发布到IIS中出现错误:处理程序“PageHandlerFactory-Integrated”在其模块列表中有一个错误模块“ManagedPipelineHandler” http:// ...

随机推荐

  1. 算法题:整形数组找a和b使得a+b=n

    题目: 数组 A 由 1000 万个随机正整数 (int) 组成,设计算法,给定整数 n,在 A 中找出 a 和 b,使其符合如下等式: n = a + b 解题思路: 1. 1000w个随机正整数占 ...

  2. VMware虚拟机更换根用户( su: Authentication failure问题)

    su命令不能切换root,提示su: Authentication failure,只要你sudo passwd root过一次之后,下次再su的时候只要输入密码就可以成功登录了.

  3. 404 Note Found队 福大助手项目测评

    目录 第一部分 调研,评测 福大助手的bug IOS端 Android端 福大助手结构体系的思维导图 为什么开发人员没有发现这个bug 假设团队开发这款app,应注意哪些方面(架构.部署运维.微服务等 ...

  4. ra寄存器定位core

    $ra寄存器中存入的是pc的值(程序运行处的地址),调用函数时,在跳转前,必须保存当前地址(pc的值),以便后来返回.jal $ra 保存后跳转,jr $ra,返回到跳转前,通过$ra保存进入上层栈地 ...

  5. Lambda 表达式的示例

    本文中的过程演示如何使用 lambda 表达式. 有关 lambda 表达式的概述,请参见 C++ 中的 Lambda 表达式. 有关 lambda 表达式结构的更多信息,请参见 Lambda 表达式 ...

  6. 浅谈User Information List

    [User Information List]用于查看一个site collection所有可以访问的用户信息.一个site collection只有一个User Information List表. ...

  7. oracle快速学习

  8. Oracle透明网关访问SQLServer数据库

    针对oracle数据库不同实例之间的数据访问,我们可以直接通过dblink访问,如果oracle数据库想访问mysql/sqlserver等数据库的数据,我们可以通过配置oracle透明网关实现异构数 ...

  9. EasyX_无法填充圆颜色的问题

    官网:https://www.easyx.cn/ 在线帮助文档:https://docs.easyx.cn/ 目标:生成一个边框为黄色,填充为蓝色的圆 遇到的问题:使用以下代码,只能生成边框为黄色的圆 ...

  10. jQuery----五星好评实现

    在美团.淘宝.京东等网页上,有许多商品.服务评价页面,五星好评功能很常见,本文利用jQuery实现五星好评功能. 案例图片:                                       ...