服务器上出现应用程序错误。此应用程序的当前自定义错误设置禁止

设置禁止远程查看应用程序错误的详细信息(出于安全原因)。

之前自己也碰到過這種情況。特此整理,希望能夠幫助有困惑的挨踢人士~

说明: 服务器上出现应用程序错误。此应用程序的当前自定义错误设置禁止查看应用程序错误的详细信息。

详细信息: 若要使他人能够从本地服务器计算机上查看此特定错误信息的详细信息,请在位于当前 Web 应用程序根目录下的“web.config”配置文件中创建一个 <customErrors> 标记。然后应将此 <customErrors> 标记的“mode”属性设置为“RemoteOnly”。若要使他人能够在远程计算机上查看详细信息,请将“mode”设置为“Off”。


<!-- Web.Config 配置文件 -->

<configuration>
<system.web>
       <customErrors mode="RemoteOnly"/>
</system.web>
</configuration>


注释: 通过修改应用程序的 <customErrors> 配置标记的“defaultRedirect”属性,使之指向自定义错误页的 URL,可以用自定义错误页替换所看到的当前错误页。


<!-- Web.Config 配置文件 -->

<configuration>
<system.web>
       <customErrors mode="On" defaultRedirect="mycustompage.htm"/>
</system.web>
</configuration>

问题是文件夹没有权限,network service权限加入解决问题 或者是下面的情况

  原因分析:服务器设置权限问题

  解决方案:在每个asp.ent主机文件夹添加network service 用户到该目录就可以了
而网上另外一种说法就是下面的:

很多朋友刚刚开始玩虚拟主机,可能对一些问题还不熟悉,特别是在ASP.NET应用程序问题上。不少站长都认为ASP/ASP.NET没有太大差别,认为.net只是asp的简单的升级版本,这样他们就会想当然的把ASP.NET站点也与asp一样放到了子目录下,但是,通常这样都会出错,一般的错误是这样的:

“/”应用程序中的服务器错误。 运行时错误

说明: 服务器上出现应用程序错误。此应用程序的当前自定义错误设置禁止远程查看应用程序错误的详细信息(出于安全原因)。但可以通过在本地服务器计算机上运行的浏览器查看。

详细信息: 若要使他人能够在远程计算机上查看此特定错误信息的详细信息,请在位于当前 Web 应用程序根目录下的“web.config”配置文件中创建一个 <customErrors> 标记。然后应将此 <customErrors> 标记的“mode”属性设置为“Off”。

<!-- Web.Config 配置文件 -->

<configuration>

<system.web>

   <customErrors mode="Off"/>

</system.web>

</configuration>


注释: 通过修改应用程序的 <customErrors> 配置标记的“defaultRedirect”属性,使之指向自定义错误页的 URL,可以用自定义错误页替换所看到的当前错误页。

<!-- Web.Config 配置文件 -->

<configuration>

<system.web>

       <customErrors mode="RemoteOnly" defaultRedirect="mycustompage.htm"/>

</system.web>

</configuration>


  在这个时候,绝大多数都会想到是程序出错了,然而无论他们怎么查、怎么找,硬是找不出问题所在,因为,这样的程序在本机调试是一切正常的!在N次无功而返之后,他们往往会求助虚拟主机提供商的管理员,可以说,大部分的管理员水平是很高的,也都知道什么原因。但不排除少数管理员的业务能力实在是低下,他们会告诉客户,这个问题无法解决!

  当然我们也不能完全怪罪于管理员,毕竟,虽然微软的.NET战略已经喊了7年了,但真正的.NET应用,特别是国内的WEB应用也只是到了最近两年才开始兴起的,因为asp代码已经相当成熟,即使是现在,仍然有许多网站是基于asp的,不过asp的安全问题日益让站长们头痛,最终的趋势肯定是向ASP.NET/PHP发展。所以,在这样的情况下,管理员不知道原因和解决方案,也就不足为奇——缺乏经验嘛!

  问题解决方法:ASP.NET应用程序的配置文件Web.config和bin目录以及aspnet_client目录(如果有的话)一定要放到虚拟目录下。对于普通使用虚拟主机的站长来说,通常只有根目录是虚拟目录,所以要想不做大的改变就实现程序的正常运行的话,可以把Web.config和bin目录以及aspnet_client目录(如果有的话)放到根目录下。如果觉得这样不方便、不利于整体管理的话,那么就只能请管理员帮你将程序所在的目录设为虚拟目录,并且这个虚拟目录要配置成应用程序级别的,这样的话程序也可以正常运行,并且没有对网站的结构产生不良影响,不过,通常这样的服务都是要收费的!

  以上对问题进行了分析并提出了解决对策,请自行考虑应该选择何种方案。

你可能感兴趣的:(.net,服务器,service,asp.net,asp,NetWork)