连续出现了很多次错误,几个结合起来终于解决了!!!
俗话说,常在河边走哪有不湿鞋。前些天重新安装了系统,最近需要用IIS发布一下.NET程序。我一向很放心的IIS竟然抛出了莫名其妙的500错误,让我一头雾水。
500错误是服务器内部错误,一般和程序没关系。最终问题算是解决了,可是改动了N个地方,具体是哪的原因也不太清楚,反正跑不了这些地方。
注意:以下图有显示不全的,可以图片另存为,在电脑上看即可!
1. 开启容易被忽略的服务。
进入“控制面板---管理工具---服务---DistributedTransaction Coordinator”。把这个服务设置成自动,并且启动它。
2.权限配置。
第一步,修改网站应用池进程标识为:NetWorkService。具体如图。
第二步,配置连接身份信息。如下图:
图中的用户名填写系统当前用户的登录用户名,密码填写系统当前用户的登录密码。
权限配置好了之后,点“连接为”旁边的“测试连接”,如果列出的项全是绿色的对钩,没有黄色的感叹号,就说明权限配置好了。如果不配置权限,很可能由于权限不足无法访问网站目录。
3.注册.NET。
经过以上两步如果依然出现500错误,请仔细回忆一下,是不是先安装了vs,然后才开启的IIS服务,这样会导致IIS中的.NET注册失败,虽然IIS中可以看到,但并未注册,所以会导致500错误。
注册方法很简单,在cmd命令提示符中输入以下命令即可:
"%WINDIR%\Microsoft.NET\Framework\v4.0.30319\aspnet_regiis.exe"-iru –enable
提示安装成功后,IIS应用程序池中会多出两个。
我测试了还是没有成功却提示:
于是:
1,通常的解决方法:原因是由于系统目录下的Temp目录无相应的权限所致,具体操作如下:C:\Windows\temp-->属性-->安全-->编辑-->添加NETWORK SERVICE用户的读写权限就可以解决.
2,打开服务器系统c盘,打开window, 右键temp 属性 安全 编辑 添加IIS_IUSRS 用户控制权限添加修改和写入权限即可。这是Windows Server 2008 R2 标准版 SP1 64位中文版解决办法。(我的是这个问题.这样就解决了,上面的network service不用也行)
但问题还是没有解决,于是进行了下面的操作!!!
开始→运行→ C:\Windows\Microsoft.NET\Framework64\v4.0.30319\aspnet_regiis -i -enable
问题完美解决!!!!
来源:https://www.cnblogs.com/foreveryu/p/7977801.html