iis发布.net网站后的错误集锦

1,在唯一密钥属性“fileExtension”设置为“.”时,无法添加类型为“mimeMap”的重复集合项:

在ASP.NET 网站的配置文件中添加了MIME类型,但是运行网站后在IIS上和页面上提示"在唯一密钥属性“fileExtension”设置为“.woff”时,无法添加类型为“mimeMap”的重复集合项"这个错误。后来经过排查,是由于重复设置了MIME类型的文件扩展名造成的。

 


2,解决设置fileExtension属性出现类型集合项添加重复的方法:

比如在网站中web.config文件的配置是这样的:

  <system.webServer>    

    <staticContent>

      <mimeMap fileExtension=".woff" mimeType="font/x-font-woff" />     

      <mimeMap fileExtension=".xap" mimeType="xapapplication/x-silverlight"/>

      <mimeMap fileExtension=".xaml" mimeType="application/xaml+xml"/> 

    </staticContent>

  </system.webServer>

如果IIS中已经有设置.xaml和 .xap这两个扩展名,那么IIS就会提示:在唯一密钥属性“fileExtension”设置为“.xaml”(或者.xap)时,无法添加类型为“mimeMap”的重复集合项。

PS:具体的提示信息是根据自己所添加的MIME类型的扩展名来的,比如我添加的是.woff,所以提示的是.woff这个扩展名无法添加重复集合项

所以一般我们要在配置文件中添加MIME Type,就得先使用remove节点删除掉要添加的MIME,防止重复。正确的配置文件代码如下:

  <system.webServer>    

    <staticContent>

      <remove fileExtension=".woff" />

      <remove fileExtension=".xap" />

      <remove fileExtension=".xaml" />

      <mimeMap fileExtension=".woff" mimeType="font/x-font-woff" />     

      <mimeMap fileExtension=".xap" mimeType="xapapplication/x-silverlight"/>

      <mimeMap fileExtension=".xaml" mimeType="application/xaml+xml"/> 

    </staticContent>

  </system.webServer>

出现此异常错误的原因

一般来说,我们之所以要在ASP.NET网站的web.config中添加MIME类型,是因为在IIS中并没有设置这个MIME类型,而且因为某些原因我们只能在网站的web.config配置文件中添加mimeMap(比如我们没有权限进入服务器等情况)。

这样就可以能出现一个问题:假设当前网站发布到新的服务器中,此时新服务器上的IIS默认已经有设置这个MIME类型,而我们网站web.config配置文件也设置了mimeMap的mimeType,这样重复添加MIME类型就会提示mimemap在集合项目设置中重复了!

所以正如上面的解决方法那样,要么使用remove节点删除重复,要么就在配置文件和IIS中二选一来设置。

3Compiler Error Message: CS0016: Could not write to output file 'c:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files\root\xx' -- 'Access is denied. '

解决方法:给 "C:\Windows\Temp"文件夹加上 IIS_IUSRS的权限就好了。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
当使用IIS 7.5发布ASP.NET MVC应用程序,可能会遇到403.14错误。这个错误通常是由于IIS无法访问到请求的目录或文件导致的。 要解决这个问题,你可以采取以下步骤: 1. 确认你的应用程序已正确地部署到IIS。确保应用程序的根目录与IIS站点的物理路径配置一致。 2. 检查IIS站点的访问权限。确保IIS用户(如IIS_IUSRS)具有足够的权限来访问应用程序的目录和文件。可以在资源管理器中找到应用程序的目录,右键点击它,选择"属性",然后在"安全"选项卡中进行设置。 3. 确认你的应用程序的Web.config文件中有正确的路由配置。确保路由的设置正确无误,以便IIS能够正确地解析URL并找到对应的控制器和操作。 4. 检查IIS的配置文件中是否启用了MVC路由模块。在IIS管理器中找到你的站点,双击它,然后在"模块"部分确认是否有"UrlRoutingModule"模块,并且它已启用。 5. 检查应用程序的Global.asax文件。确保其中的RegisterRoutes方法被正确地调用并包含正确的路由设置。 如果以上步骤都没有解决问题,你还可以尝试在IIS管理器中重新注册ASP.NET MVC。在命令提示符中运行以下命令: %WINDIR%\Microsoft.NET\Framework\v4.0.30319\aspnet_regiis.exe -i 这将重新注册ASP.NET MVC,并可能解决403.14错误。 总之,通过检查应用程序的部署、访问权限、路由配置以及IIS和ASP.NET MVC的正确安装,应该能够解决IIS 7.5中发布ASP.NET MVC应用程序可能出现的403.14错误
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值