запуск веб-службы (.asmx) в IIS 6.0 - PullRequest
2 голосов
/ 10 апреля 2011

Я разработал веб-сервис с расширением .asmx, используя C #, и я хочу развернуть его на моем VPS с Windows Server 2003 с IIS 6.

Сервис работает с Framework 4.0 и установлен вVPS также.Когда я загружаю предварительно скомпилированную версию в VPS, она показывает ошибку времени выполнения

Ошибка сервера в '/' приложении.

Ошибка времени выполнения

Описание: Ошибка приложенияпроизошло на сервере.Текущие пользовательские настройки ошибок для этого приложения не позволяют удаленно просматривать подробности ошибки приложения (из соображений безопасности).Однако его могут просматривать браузеры, работающие на локальном сервере.

Подробно: Чтобы детали этого конкретного сообщения об ошибке можно было просматривать на удаленных компьютерах, создайте тег <customErrors> в файле конфигурации "web.config", расположенном в корневом каталоге текущего веб-приложения.,Для этого тега должен быть установлен атрибут «mode» «Выкл.».

<!-- Web.Config Configuration File -->

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

Примечания: текущую страницу ошибки, которую вы видите, можно заменить пользовательской ошибкой.измените атрибут defaultRedirect тега конфигурации приложения <customErrors>, указав URL-адрес пользовательской страницы ошибки.

<!-- Web.Config Configuration File -->

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

Может ли кто-нибудь помочь мне в этом?

Обновление

Ошибка сервера в приложении '/'.

Ошибка конфигурации

Описание: во время обработки файла конфигурации, необходимого для> обслуживания этого запроса, произошла ошибка.Пожалуйста, просмотрите подробности конкретной ошибки ниже и соответствующим образом измените свой файл конфигурации.

Сообщение об ошибке синтаксического анализатора: нераспознанный атрибут targetFramework.Обратите внимание, что имена атрибутов> чувствительны к регистру.

Ошибка источника:

Строка 26: Строка 27:
Строка 28: Строка 29: Строка 30: Культура = нейтральная, PublicKeyToken = 31BF3856AD364E35"/>

Исходный файл: C: \ Inetpub \ vhosts \ akashvahini.com \ httpdocs \ web.config
Строка: 28

Информация о версии: Microsoft .NET Framework Версия: 2.0.50727.3053; ASP.NET> Версия: 2.0.50727.3053

это новое сообщение об ошибке после включения отладки в web.config

Ответы [ 3 ]

3 голосов
/ 10 апреля 2011

Вы должны включить отладку для диагностики проблемы.
У Microsoft есть очень подробное объяснение о том, как включить детальную отладку для здесь .

Server Error in '/' Application.

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

Обновление :
Кажется, что это связано с разрешениями:
http://forums.iis.net/p/1042369/1454379.aspx
У учетной записи пользователя ASPNET требуются разрешения для папки, содержащей вашу службу asmx.

Обновление 2 : пользовательские разрешения ASPNET можно предоставить с помощью диалогового окна разрешений файловой системы:
http://www.asp.net/learn/whitepapers/denied-access-to-iis-directories

Может выглядеть иначе в новых версиях Windows.

2 голосов
/ 13 апреля 2011

Похоже, пул приложений пытается запустить две разные версии в .net.

Создайте новый пул приложений и назовите его как .Net4, а затем переместите новый сайт для использования этого пула приложений, и все должно работать.

Эта ошибка отображается в информации о версии: Microsoft .NET Framework Версия: 2.0.50727.3053;ASP.NET> Версия: 2.0.50727.3053

Где сайт с расширением .asmx должен сказать.

2 голосов
/ 10 апреля 2011

Из моего опыта «Серверное приложение недоступно» означает, что у вас есть веб-сайты, которые используют разные версии .net в одном пуле приложений.

сайт, на котором размещается ваш веб-сервис, должен находиться в пуле приложений, в котором есть только веб-сайты .net 4.0. Пул приложений настраивается на вкладке Домашний каталог в свойствах веб-сайта.

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