2016-12-02 71 views
0

有时会出现在.net中的核心工程。没有在IIS和没有项目。找不到在哪里我可以改变它。 enter image description here如何更改默认:(哎呀内部服务器错误500в对.NET核心?

+0

听起来像阅读[在ASP.NET核心处理错误](https://docs.microsoft .com/en-us/aspnet/core/fundamentals/error-handling)会很方便。 – mason

+0

你能否详细说明你的问题?示例代码,源代码中发生错误的行是什么?你是从VS还是VS代码运行? – berniefitz

+0

https://github.com/aspnet/Hosting/issues/717你必须按照这个线程描述的故障排除步骤。 –

回答

0

导航到放置在该目录下您已发布应用程序的web.config文件它应该看起来休耕:。

<?xml version="1.0" encoding="utf-8"?> 
<configuration> 
    <system.webServer> 
    <handlers> 
     <add name="aspNetCore" path="*" verb="*" modules="AspNetCoreModule" resourceType="Unspecified" /> 
    </handlers> 
    <aspNetCore processPath="dotnet" arguments=".\YOUR.APPLICATION.dll" stdoutLogEnabled="true" stdoutLogFile=".\logs\stdout" forwardWindowsAuthToken="false" /> 
    </system.webServer> 
</configuration> 

查找stdoutLogEnabledstdoutLogFile设置第一个真正的,你会能够看到日志文件中发生了什么。

提示:在您的应用程序中创建目录logs(位于web.config文件所在的同一级别)并为Everyone分配完整权限。

UPDATE:要更改默认的错误页面,定制一个你可以使用类似的东西:

<system.webServer> 
    <httpErrors errorMode="Custom" existingResponse="Replace"> 
    <remove statusCode="500" subStatusCode="13" /> //subStatusCode just if needed 
    <error statusCode="500" 
      subStatusCode="13" 
      prefixLanguageFilePath="" 
      path="http://YOUR_SITE.com/path/to/page" 
      responseMode="Redirect" /> 
    </httpErrors> 
</system.webServer> 
+1

为每个人分配完全控制权通常是不好的建议,这里的问题不是如何登录,而是如何更改默认的错误页面。 – CodeCaster

+0

当然,这是个坏主意 - 这只是一个提示,可以跳过快速获取日志文件的权限问题。我已经更新了我的答案,并附加了如何自定义错误页面的信息。 –