2016-08-28 4 views
3

Я публикую приложение для моего собственного сервера iis.API не обслуживается в IIS, но он есть с Kestrel

Затем я запустил приложение с dotnet myapp.dll, и приложение работает правильно.

Однако, когда я включаю IIS и пытаюсь получить доступ к сайту, все статические файлы отображаются правильно, но API вызывает возврат 404 не найден.

Это запрос. Обратите внимание, что это вызов параметров. Нужно ли мне что-то настраивать в API для их обработки? (Я просто пытался на другом компьютере, и он показал, как GET, а не вариантов, но тот же 404 ошибка.

OPTIONS /api/Entity/list-active HTTP/1.1 
Host: greggum.com 
Connection: keep-alive 
Pragma: no-cache 
Cache-Control: no-cache 
Access-Control-Request-Method: GET 
Origin: http://96.254.154.55 
User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.116 Safari/537.36 
Access-Control-Request-Headers: content-type 
Accept: */* 
Referer: http://96.254.154.55/ 
Accept-Encoding: gzip, deflate, sdch 
Accept-Language: en-US,en;q=0.8 
+0

есть много вещей, которые не могут быть правильными. вы уверены, что в startup.cs у вас есть приложение .UseMVC() ava ilable? – lazy

+0

Да, у меня есть этот набор. –

+0

и для маршрутов api, как они установлены? при контроле и отдельных действиях? – lazy

ответ

2

Вы следовали Publishing to IIS документы?

Особенно .NET Core Windows Server Hosting bundle, который должен быть установлено.

Кроме того, обратите внимание, что в отличие от стандартного приложения ASP.NET, вы будете работать с Unmanaged Application Pool.

+0

Да, я прочитал, что я установил этот пакет, и я установил рабочий процесс на не управляемый код. –

+0

Вы проверили файлы журнала приложений, чтобы узнать, достиг ли запрос к вашему приложению? Есть ли что-нибудь в журнале событий? https://docs.asp.net/ru/latest/publishing/iis.html#common-errors содержит подробную информацию об устранении неполадок. –

+0

Нет, не знаю. Дай мне проверить. –