2016-09-29 2 views
1

У меня есть Basic Auth для конкретной папки и анонимный отключен. Я также создал пользователей, однако я получаю «Невозможно отобразить страницу, потому что произошла ошибка внутреннего сервера». сообщение в браузере. Вот журнал из неудавшейся трассировки запроса. Я смотрел на это часами, но не смог его решить.IIS 8.5 Внутренняя ошибка 500.19

Та же ошибка срабатывает, когда я получить доступ к любым несуществующим страницам, например http://144.144.144.144/adas

<failedRequest url="http://144.144.144.144:80/adas" 
       siteId="1" 
       appPoolId="DefaultAppPool" 
       processId="824" 
       verb="GET" 
       remoteUserName="" 
       userName="" 
       tokenUserName="NT AUTHORITY\IUSR" 
       authenticationType="anonymous" 
       activityId="{80000068-0002-FF00-B63F-84710C7967BB}" 
       failureReason="STATUS_CODE" 
       statusCode="500.19" 
       triggerStatusCode="500.19" 
       timeTaken="0" 
       xmlns:freb="http://schemas.microsoft.com/win/2006/06/iis/freb" 
       > 

журнал для базовой аутентификации:

<?xml version="1.0" encoding="UTF-8" ?> 
<?xml-stylesheet type='text/xsl' href='freb.xsl'?> 
<!-- saved from url=(0014)about:internet --> 
<failedRequest url="http://144.144.144.144:80/admin/" 
       siteId="1" 
       appPoolId="DefaultAppPool" 
       processId="820" 
       verb="GET" 
       authenticationType="NOT_AVAILABLE"    activityId="{8000000E-0002-FF00-B63F-84710C7967BB}" 
       failureReason="STATUS_CODE" 
       statusCode="500.19" 
       triggerStatusCode="500.19" 
       timeTaken="0" 
       xmlns:freb="http://schemas.microsoft.com/win/2006/06/iis/freb" 
       > 
<Event xmlns="http://schemas.microsoft.com/win/2004/08/events/event"> 
<System> 
    <Provider Name="WWW Server" Guid="{3A2A4E84-4C21-4981-AE10-3FDA0D9B0F83}"/> 
    <EventID>0</EventID> 
    <Version>1</Version> 
    <Level>0</Level> 
    <Opcode>1</Opcode> 
    <Keywords>0x0</Keywords> 
    <TimeCreated SystemTime="2016-09-29T15:24:04.662Z"/> 
    <Correlation ActivityID="{8000000E-0002-FF00-B63F-84710C7967BB}"/> 
    <Execution ProcessID="820" ThreadID="3756"/> 
    <Computer>OWNEROR-9DTV6I9</Computer> 
</System> 
<EventData> 
    <Data Name="ContextId">{8000000E-0002-FF00-B63F-84710C7967BB}</Data> 
    <Data Name="SiteId">1</Data> 
    <Data Name="AppPoolId">DefaultAppPool</Data> 
    <Data Name="ConnId">1610612749</Data> 
    <Data Name="RawConnId">0</Data> 
    <Data Name="RequestURL">http://144.144.144.144:80/admin/</Data> 
    <Data Name="RequestVerb">GET</Data> 
</EventData> 
<RenderingInfo Culture="el-GR"> 
    <Opcode>GENERAL_REQUEST_START</Opcode> 
</RenderingInfo> 
<ExtendedTracingInfo xmlns="http://schemas.microsoft.com/win/2004/08/events/trace"> 
    <EventGuid>{D42CF7EF-DE92-473E-8B6C-621EA663113A}</EventGuid> 
</ExtendedTracingInfo> 
</Event> 
<Event xmlns="http://schemas.microsoft.com/win/2004/08/events/event"> 
<System> 
    <Provider Name="WWW Server" Guid="{3A2A4E84-4C21-4981-AE10-3FDA0D9B0F83}"/> 
    <EventID>0</EventID> 
    <Version>1</Version> 
    <Level>0</Level> 
    <Opcode>33</Opcode> 
    <Keywords>0x0</Keywords> 
    <TimeCreated SystemTime="2016-09-29T15:24:04.662Z"/> 
    <Correlation ActivityID="{8000000E-0002-FF00-B63F-84710C7967BB}"/> 
    <Execution ProcessID="820" ThreadID="3756"/> 
    <Computer>OWNEROR-9DTV6I9</Computer> 
</System> 
<EventData> 
    <Data Name="ContextId">{8000000E-0002-FF00-B63F-84710C7967BB}</Data> 
    <Data Name="HttpStatus">500</Data> 
    <Data Name="HttpSubStatus">19</Data> 
    <Data Name="FileNameOrURL"></Data> 
</EventData> 
<RenderingInfo Culture="el-GR"> 
    <Opcode>GENERAL_SEND_CUSTOM_ERROR</Opcode> 
</RenderingInfo> 
<ExtendedTracingInfo xmlns="http://schemas.microsoft.com/win/2004/08/events/trace"> 
    <EventGuid>{D42CF7EF-DE92-473E-8B6C-621EA663113A}</EventGuid> 
</ExtendedTracingInfo> 
</Event> 
<Event xmlns="http://schemas.microsoft.com/win/2004/08/events/event"> 
<System> 
    <Provider Name="WWW Server" Guid="{3A2A4E84-4C21-4981-AE10-3FDA0D9B0F83}"/> 
    <EventID>0</EventID> 
    <Version>1</Version> 
    <Level>0</Level> 
    <Opcode>2</Opcode> 
    <Keywords>0x0</Keywords> 
    <TimeCreated SystemTime="2016-09-29T15:24:04.662Z"/> 
    <Correlation ActivityID="{8000000E-0002-FF00-B63F-84710C7967BB}"/> 
    <Execution ProcessID="820" ThreadID="3756"/> 
    <Computer>OWNEROR-9DTV6I9</Computer> 
</System> 
<EventData> 
    <Data Name="ContextId">{8000000E-0002-FF00-B63F-84710C7967BB}</Data> 
    <Data Name="BytesSent">222</Data> 
    <Data Name="BytesReceived">466</Data> 
    <Data Name="HttpStatus">500</Data> 
    <Data Name="HttpSubStatus">19</Data> 
</EventData> 
<RenderingInfo Culture="el-GR"> 
    <Opcode>GENERAL_REQUEST_END</Opcode> 
</RenderingInfo> 
<ExtendedTracingInfo xmlns="http://schemas.microsoft.com/win/2004/08/events/trace"> 
    <EventGuid>{D42CF7EF-DE92-473E-8B6C-621EA663113A}</EventGuid> 
</ExtendedTracingInfo> 
</Event> 
</failedRequest> 

Спецификация сервера является: 64-разрядным ОС Windows 2012 R2 с IIS 8.5. Кто-нибудь знает, что происходит? Заранее спасибо.

ответ

0

Кажется, следующие строки в web.config вызвали проблемы. все еще не знаю почему.

<httpErrors errorMode="DetailedLocalOnly"> 
     <remove statusCode="404" subStatusCode="-1" /> 
     <error statusCode="404" prefixLanguageFilePath="" path="C:\inetpub\wwwroot\notfound.htm" responseMode="File" /> 
    </httpErrors> 

Я решил проблему, удалив эти четыре строки.

+0

Можете ли вы рассказать нам, как вы решили проблему? –

+1

Да, просто удалив эти 4 строки – MIrrorMirror

+0

Поскольку комментарии не обязательно постоянны, я отредактировал этот комментарий в вашем ответе. Не стесняйтесь настраивать мое редактирование и/или добавлять дополнительную информацию. –

0

Само сообщение об ошибке должно быть «Абсолютный физический путь ... не разрешен в разделе system.webServer/httpErrors в файле web.config. Вместо этого используйте относительный путь».

И это ясно говорит как о причине, так и решении. Это значение, установленное в path, должно быть относительным путем.

Вы можете проверить ссылку ниже, например,

https://www.iis.net/configreference/system.webserver/httperrors/error

0

Я столкнулся с этим вопросом себя и обнаружил, что «плохой характер» забрался в мой файл. Моя ошибка 500.19 говорила мне, что сам XML-заголовок <?xml version="1.0" encoding="UTF-8" ?> приводит к тому, что web.config является «искаженным XML».

Удаление строки в блокноте и сохранение данных исправили проблему, но почему заголовок XML вывел неверную ошибку XML !? Поэтому я вернулся к веб-интерфейсу Stash для просмотра файла, чтобы узнать, изменилось ли оно в источнике.

Именно здесь я отметил красную точку в качестве первого символа файла в той же строке, что и заголовок XML. Красная точка обычно является «плохим персонажем», кто-то использовал редактор, который позволял символу за пределами кодировки файла или, может быть, поврежденному сохранению. Но то, что у вас получается, - это невидимый персонаж, который разбивает IIS, когда он читает вашу конфигурацию!

ТАК, будьте осторожны, чтобы не выбрасывать ребенка с водой для ванны! Возможно, это не так, как вы видите, это неправильно.

В Windows, быстрое исправление для плохих символов - использовать «тупость» буфера обмена (строгость) и делать Ctrl-A, Ctrl-C, удалять файл, создавать пустой файл с тем же именем и Ctrl- V. Блокнот прекрасно работает с этим, поскольку он не будет пытаться «помочь» с дополнительной интерпретацией, когда вы вставляете обратно. Это позволит эффективно и быстро удалить любые «невидимые» символы, которые Windows не распознает, поскольку буфер обмена просто не копирует их!

Хотя непроверенные, несогласованные значения кодировки в заголовках XML среди других файлов .config (machine.config, app.configs и т. Д.) Также могут привести к этой проблеме. Было отмечено, что IIS не будет уважать разные кодировки, так как он считывает все .configs вместе. В настоящее время по умолчанию используется UTF-8 (ASP NET 4), поэтому, если вы измените кодировку XML в своей сети.config по какой-либо причине, убедитесь, что ваш machine.config соответствует. Я чувствую, что я должен здесь позвонить, что изменение кодировки от дефолта является рискованным, поэтому не делайте этого, если вы можете ему помочь!

Смежные вопросы