IBM WebSphere развертывает приложение Angular 5 и получает 404 на обновление - PullRequest
0 голосов
/ 26 апреля 2018

Я создаю приложения с полным стеком с помощью Angular (в настоящее время версия 5). Обычно бэкэнд имеет значение Windows Server и использует IIS, поэтому я знаю, что нужно развернуть файл web.config с кодом модуля перезаписи.

Проблема в том, что сайт является SPA, и он должен всегда указывать на index.html, независимо от того, что говорит URL-адрес ...

Как я уже сказал, я привык к окнам, ноbackend - это Java с IBM Websphere

Кто-нибудь знает, что мне нужно сделать, чтобы иметь правильно работающее приложение Angular?

Например, конфигурация для WINDOWS - это web.config, подобный этомуниже, но это Websphere с Java-приложением, и я предполагаю, что серверная часть Linux/unix

<configuration>
<system.webServer>
  <rewrite>
    <rules>
      <rule name="Angular Routes" stopProcessing="true">
        <match url=".*" />
      <conditions logicalGrouping="MatchAll">
        <add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" />
        <add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" />
      </conditions>
      <action type="Rewrite" url="/MyApp/" />
      <!--<action type="Rewrite" url="/" />-->
      </rule>
    </rules>
  </rewrite>
</system.webServer>
</configuration>

1 Ответ

0 голосов
/ 26 апреля 2018

Вам необходимо добавить следующее в файл web.xml, который упакован в каталог WEB_INF в файле .war вашего приложения:

<error-page>
    <error-code>404</error-code>
    <location>/</location>
</error-page>

, который сообщает серверу приложений, чтобы он показывал ресурсв корне контекста приложения при выдаче ошибки 404.

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