Гость
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / 404 not found web api / 18 сообщений из 18, страница 1 из 1
20.04.2020, 17:02
    #39949027
asn-ccode
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
404 not found web api
Всем доброго дня!
Имеется приложение WebApi. При запуске приложения из VS все работает, но при развертывании его на IIS получаю ошибку 404 на все запросы. В чем может быть проблема? Насколько я понимаю, чего то не хватает в web.config. Приложение написано на .Net Framework 4.6. IIS 8.0. Буду благодарен за любую помощь.
...
Рейтинг: 0 / 0
20.04.2020, 17:12
    #39949038
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
404 not found web api
asn-ccode
Буду благодарен за любую помощь.
Будем благодарны за любые подробности вашей проблемы
...
Рейтинг: 0 / 0
20.04.2020, 18:25
    #39949081
hVostt
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
404 not found web api
asn-ccode,

Вы что-то не так сделали, не за что )
...
Рейтинг: 0 / 0
20.04.2020, 21:50
    #39949114
asn-ccode
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
404 not found web api
Shocker.Pro, какую информацию предоставить?
...
Рейтинг: 0 / 0
20.04.2020, 21:52
    #39949115
asn-ccode
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
404 not found web api
hVostt, это я, как бэ, и сам понимаю))) Меня и интересует, в чем может быть дело...
Делал вот по этой инструкции: https://docs.microsoft.com/ru-ru/aspnet/core/host-and-deploy/iis/?view=aspnetcore-3.1
...
Рейтинг: 0 / 0
20.04.2020, 22:08
    #39949118
Дмитрий Мух
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
404 not found web api
asn-ccode
Shocker.Pro, какую информацию предоставить?

начните с того, что уточните ешё раз следующий момент: у вас ASP.NET Core, или WebApi (.Net Framework 4.6)?

если последнее, то вы не ту инструкцию использовали
...
Рейтинг: 0 / 0
20.04.2020, 22:29
    #39949121
asn-ccode
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
404 not found web api
Дмитрий Мух

начните с того, что уточните ешё раз следующий момент: у вас ASP.NET Core, или WebApi (.Net Framework 4.6)?

WebApi (.Net Framework 4.6)
Дмитрий Мух
если последнее, то вы не ту инструкцию использовали

Виноват, не на тот сайт ссылку скинул. Но для .Net Framework она фактически ничем не отличается. Например, вот еще https://www.c-sharpcorner.com/article/hosting-asp-net-web-api-rest-service-on-iis-10/ В плане переноса сайта на хост она точно такая же... Собственно, и состоит из пары действий... Не понимаю, где я там мог ошибиться...
...
Рейтинг: 0 / 0
20.04.2020, 22:34
    #39949124
Дмитрий Мух
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
404 not found web api
asn-ccode
Не понимаю, где я там мог ошибиться...

Хз, наверное нигде, само не работает :)
...
Рейтинг: 0 / 0
20.04.2020, 22:36
    #39949125
Дмитрий Мух
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
404 not found web api
asn-ccode,

давайте так, мы тут не из тех. поддержки, так что будет лучше, если вы сами обрисуете картину полностью
...
Рейтинг: 0 / 0
20.04.2020, 22:56
    #39949133
asn-ccode
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
404 not found web api
Дмитрий Мух, ситуация такова - я написал приложение web api с использованием .Net Framework 4.6.1. Приложение примитивное, состоит из пары контроллеров (они фактически одинаковые, просто берут данные из разных таблиц). Пример контроллера:
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
    public class VersionController : ApiController
    {
        // GET: api/Version
        [ResponseType(typeof(string))]
        public async Task<IHttpActionResult> GetVersion()
        {
            string connectionString = ConfigurationManager.ConnectionStrings["DbConn"].ConnectionString;

            using (SqlConnection connection = new SqlConnection(connectionString))
            {
                using (SqlCommand cmd = new SqlCommand("SELECT AppVersh FROM T185", connection))
                {
                    connection.Open();
                    var res = await cmd.ExecuteScalarAsync();
                    connection.Close();

                    return Ok(res);
                }
            }
        }
    }


Если запустить приложение из VS в режиме отладки, то все прекрасно работает (см. скрин). Однако после переноса приложения на полноценный IIS сервер, в ответ на запросы приходит ответ 404.
Файл web.config:
Код: xml
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
<?xml version="1.0"?>
<configuration>
  <configSections>
    <section name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false"/>
  </configSections>
  <appSettings>
    <add key="webpages:Version" value="3.0.0.0"/>
    <add key="webpages:Enabled" value="false"/>
    <add key="ClientValidationEnabled" value="true"/>
    <add key="UnobtrusiveJavaScriptEnabled" value="true"/>
  </appSettings>
  <system.web>
    <compilation debug="true" targetFramework="4.6.1"/>
    <httpRuntime targetFramework="4.6.1" maxRequestLength="10000000"/>
  </system.web>
  <runtime>
    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
      <dependentAssembly>
        <assemblyIdentity name="Antlr3.Runtime" publicKeyToken="eb42632606e9261f"/>
        <bindingRedirect oldVersion="0.0.0.0-3.5.0.2" newVersion="3.5.0.2"/>
      </dependentAssembly>
      <dependentAssembly>
        <assemblyIdentity name="Newtonsoft.Json" culture="neutral" publicKeyToken="30ad4fe6b2a6aeed"/>
        <bindingRedirect oldVersion="0.0.0.0-11.0.0.0" newVersion="11.0.0.0"/>
      </dependentAssembly>
      <dependentAssembly>
        <assemblyIdentity name="System.Web.Optimization" publicKeyToken="31bf3856ad364e35"/>
        <bindingRedirect oldVersion="1.0.0.0-1.1.0.0" newVersion="1.1.0.0"/>
      </dependentAssembly>
      <dependentAssembly>
        <assemblyIdentity name="WebGrease" publicKeyToken="31bf3856ad364e35"/>
        <bindingRedirect oldVersion="0.0.0.0-1.6.5135.21930" newVersion="1.6.5135.21930"/>
      </dependentAssembly>
      <dependentAssembly>
        <assemblyIdentity name="System.Web.Helpers" publicKeyToken="31bf3856ad364e35"/>
        <bindingRedirect oldVersion="1.0.0.0-3.0.0.0" newVersion="3.0.0.0"/>
      </dependentAssembly>
      <dependentAssembly>
        <assemblyIdentity name="System.Web.WebPages" publicKeyToken="31bf3856ad364e35"/>
        <bindingRedirect oldVersion="1.0.0.0-3.0.0.0" newVersion="3.0.0.0"/>
      </dependentAssembly>
      <dependentAssembly>
        <assemblyIdentity name="System.Web.Mvc" publicKeyToken="31bf3856ad364e35"/>
        <bindingRedirect oldVersion="1.0.0.0-5.2.4.0" newVersion="5.2.4.0"/>
      </dependentAssembly>
    </assemblyBinding>
  </runtime>
  <system.codedom>
    <compilers>
      <compiler language="c#;cs;csharp" extension=".cs" type="Microsoft.CodeDom.Providers.DotNetCompilerPlatform.CSharpCodeProvider, Microsoft.CodeDom.Providers.DotNetCompilerPlatform, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" warningLevel="4" compilerOptions="/langversion:default /nowarn:1659;1699;1701"/>
      <compiler language="vb;vbs;visualbasic;vbscript" extension=".vb" type="Microsoft.CodeDom.Providers.DotNetCompilerPlatform.VBCodeProvider, Microsoft.CodeDom.Providers.DotNetCompilerPlatform, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" warningLevel="4" compilerOptions="/langversion:default /nowarn:41008 /define:_MYTYPE=\&quot;Web\&quot; /optionInfer+"/>
    </compilers>
  </system.codedom>
  <connectionStrings>
    <add name="DbConn" connectionString="Data Source=HIVE\SQLEXPRESS;Initial Catalog=Test;Integrated Security=True;Connect Timeout=30;Encrypt=False;TrustServerCertificate=False;ApplicationIntent=ReadWrite;MultiSubnetFailover=False"/>
  </connectionStrings>
  <entityFramework>
    <defaultConnectionFactory type="System.Data.Entity.Infrastructure.SqlConnectionFactory, EntityFramework"/>
    <providers>
      <provider invariantName="System.Data.SqlClient" type="System.Data.Entity.SqlServer.SqlProviderServices, EntityFramework.SqlServer"/>
    </providers>
  </entityFramework>
</configuration>
...
Рейтинг: 0 / 0
20.04.2020, 23:01
    #39949134
asn-ccode
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
404 not found web api
Как переносил на хост: в VS выбрал "опубликовать в папку". Затем полученные файлы скопировал в c:\inetpub\wwwroot.
Затем в менеджере IIS выбрал "добавить сайт", указал путь к папке и все...
...
Рейтинг: 0 / 0
20.04.2020, 23:03
    #39949135
asn-ccode
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
404 not found web api
Дмитрий Мух

Хз, наверное нигде, само не работает :)

У меня тоже такое подозрение)))))))))))
...
Рейтинг: 0 / 0
20.04.2020, 23:22
    #39949140
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
404 not found web api
ну если продолжаешь обращаться к localhost:56554, то, естественно, работать не будет.
...
Рейтинг: 0 / 0
21.04.2020, 09:00
    #39949201
asn-ccode
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
404 not found web api
Shocker.Pro
ну если продолжаешь обращаться к localhost:56554, то, естественно, работать не будет.

адрес в запросах, разумеется, другой указываю. не localhost:56554
...
Рейтинг: 0 / 0
21.04.2020, 10:02
    #39949214
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
404 not found web api
asn-ccode
адрес в запросах, разумеется, другой указываю. не localhost:56554
Ну так это тебе разумеется, а нам - нет, может ты порт не меняешь, может настроил https, а обращаешься к http. Неясно даже, выкладываешь ты на локальную машину или куда-то еще, по какому адресу обращаешься и как это соответствует настройкам IIS, какие именно папки скопировал и какие указал..... эээ, ну в общем, тебе с самого начала было сказано
hVostt
Вы что-то не так сделали, не за что )
это пока все, что можно сказать по твоей проблеме, потому что подробности описывать ты упорно отказываешься.
...
Рейтинг: 0 / 0
21.04.2020, 11:25
    #39949249
Дмитрий Мух
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
404 not found web api
Также не ясно, что за версия операционной системы, всё ли необходимое установлено, включено и зарегистрировано...

Все нужные галки прочеканы в Role Services?

https://docs.microsoft.com/en-us/iis/get-started/whats-new-in-iis-8/iis-80-using-aspnet-35-and-aspnet-45
...
Рейтинг: 0 / 0
21.04.2020, 11:35
    #39949255
hVostt
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
404 not found web api
asn-ccode
Как переносил на хост: в VS выбрал "опубликовать в папку". Затем полученные файлы скопировал в c:\inetpub\wwwroot.
Затем в менеджере IIS выбрал "добавить сайт", указал путь к папке и все...


1. Выберите другую папку
2. К папке должен быть доступ апликейшен пулу https://docs.microsoft.com/en-us/previous-versions/windows/it-pro/windows-server-2008-R2-and-2008/cc771170(v=ws.10)?redirectedfrom=MSDN
3. К созданному сайту должны быть настроены биндинги
...
Рейтинг: 0 / 0
21.04.2020, 16:37
    #39949446
asn-ccode
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
404 not found web api
Всем спасибо за помощь! Проблема решилась переустановкой IIS. Вероятно, чего то в нем не хватало...
...
Рейтинг: 0 / 0
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / 404 not found web api / 18 сообщений из 18, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]