Как мне преобразовать мое приложение asp.net, которое отлично работает в iis 6 и 7, чтобы теперь работать с iis 8 и 10? - PullRequest
0 голосов
/ 04 апреля 2019

Я перемещаю свое веб-приложение asp.net с сервера, на котором размещен iis 7.5, на сервер, на котором размещен iis 8, а также на другой сервер, на котором размещен iis 10. Приложение работает безупречно на сервере, на котором размещается iis 7.5, но не на двух других.,Я не уверен, имеет ли это отношение к классическим и интегрированным конвейерам, появившимся в iis 8, или к пользовательским обработчикам в моей веб-конфигурации.У меня установлен ASP.NET и включены все функции Windows iis.

При размещении веб-приложения на сервере с iis 8 я получаю сообщение об ошибке из ASP.NET 4.0.3:

Код события: 3005 Сообщение о событии: произошло необработанное исключение.Время события: 2019-04-04 10:04:03 Время события (UTC): 2019-04-04 14:04:03 Идентификатор события: 411ec0a6236e4e049ff136934b619b5b Последовательность событий: 5 Возникновение события: 4 Код с подробным описанием события: 0

Информация о приложении:

 Application domain: /LM/W3SVC/3/ROOT-1-131987918821404332 
 Trust level: Full 
 Application Virtual Path: / 
 Application Path: E:\cbnpod\ 
 Machine name: {serverName}   

Информация о процессе:

 Process ID: 5352 
 Process name: w3wp.exe 
 Account name: {serverName}\Administrator    

Информация об исключении:

 Exception type: InvalidOperationException 
 Exception message: WebSockets is unsupported in the current application configuration. To enable this, set the following configuration switch in Web.config: <system.web> <httpRuntime targetFramework="4.5" /> </system.web>

Я пытался добавить это в свое приложениеКонфигурационный файл и ничего не изменилось.

На сервере, на котором размещается iis 10, приложение, пытающееся подключиться к моей службе, выдает следующую ошибку:

System.ServiceModel.ProtocolException: удаленный сервер возвратил неожиданный ответ: (405) Метод не разрешен.---> System.Net.WebException: удаленный сервер возвратил ошибку: (405) Метод не разрешен.в System.Net.HttpWebRequest.GetResponse ()
в System.ServiceModel.Channels.HttpChannelFactory`1.HttpRequestChannel.HttpChannelRequest.WaForForReply (TimeSpan timeout) --- Конец внутренней трассировки стека исключений * 10

Трассировка стека сервера: по адресу System.ServiceModel.Channels.HttpChannelUtilities.ValidateRequestReplyResponse (запрос HttpWebRequest, ответ HttpWebResponse, HttpChannelFactory
1 factory, WebException responseException, ChannelBinding channelBinding) at System.ServiceModel.Channels.HttpChannelFactory 1.HttpRequest.hannelRelayThannel TimeHan (), TimeSpan timeout) в System.ServiceModel.Dispatcher.RequestChannelBinder.Request (сообщение-сообщение, TimeSpan timeout) в System.ServiceModel.Channels.ServiceChannel.Call (действие String, логический oneway, операция ProxyOperationRuntime, Object [] ins, Object [outs] Object [outs], Время ожидания TimeSpan) в System.ServiceModel.Channels.ServiceChannelProxy.InvokeService (IMethodCallMessage methodCall, операция ProxyOperationRuntime) в System.ServiceModel.Channels.ServiceChannelProxy.Invoke (сообщение IMessage)

Я думаю, что это может иметь какое-то отношение к этим пользовательским обработчикам iis, которые я нашел в файле конфигурации моего приложения:

<handlers>
      <remove name="ExtensionlessUrlHandler-ISAPI-4.0_32bit" />
      <remove name="ExtensionlessUrlHandler-ISAPI-4.0_64bit" />
      <remove name="ExtensionlessUrlHandler-Integrated-4.0" />
      <add name="ExtensionlessUrlHandler-ISAPI-4.0_32bit" path="*." verb="GET,HEAD,POST,DEBUG,PUT,DELETE,PATCH,OPTIONS" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework\v4.0.30319\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv4.0,bitness32" responseBufferLimit="0" />
      <add name="ExtensionlessUrlHandler-ISAPI-4.0_64bit" path="*." verb="GET,HEAD,POST,DEBUG,PUT,DELETE,PATCH,OPTIONS" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework64\v4.0.30319\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv4.0,bitness64" responseBufferLimit="0" />
      <add name="ExtensionlessUrlHandler-Integrated-4.0" path="*." verb="GET,HEAD,POST,DEBUG,PUT,DELETE,PATCH,OPTIONS" type="System.Web.Handlers.TransferRequestHandler" preCondition="integratedMode,runtimeVersionv4.0" />
 </handlers>

К сожалению, я неЯ действительно не знаю, что это означает, и у меня больше нет контакта с человеком, который написал это изначально.

Интересно, что когда я запускаю приложение из Visual Studio в режиме релиза с использованием iis express, все работает без нареканийкак это происходит на сервере, на котором размещен iis 7.5

Пожалуйста, не стесняйтесь задавать вопросы, я не в себе, поэтому я могу быть полностью отключен ... Я провел весь день вчера, пытаясь исследовать это, и я чувствую,как будто я исчерпал все свои ресурсы.Может быть, я не задаю правильные вопросы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...