Azure Веб-приложение Angular Не перенаправляет на www - PullRequest
0 голосов
/ 22 апреля 2020

У меня есть следующее в моем web.config

<configuration>
    <system.webServer>
        <httpErrors errorMode="Detailed" />
      <rewrite>
        <rules>
          <rule name="Angular" stopProcessing="true">
            <match url="^(.*)$" ignoreCase="false" />
            <conditions logicalGrouping="MatchAll">
              <add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" pattern="" ignoreCase="false" />
            </conditions>
            <action type="Rewrite" url="index.html" appendQueryString="true"/>
          </rule>
          <rule name="Redirect to www" stopProcessing="true">
              <match url="(.*)" />
              <conditions trackAllCaptures="false">
                <add input="{HTTP_HOST}" pattern="^mydomain.com$" />
              </conditions>
              <action type="Redirect" 
                url="{MapProtocol:{HTTPS}}://www.mydomain.com/{R:1}" />
            </rule>
        </rules>
          <rewriteMaps>
            <rewriteMap name="MapProtocol">
              <add key="on" value="https" />
              <add key="off" value="http" />
            </rewriteMap>
        </rewriteMaps>
      </rewrite>
    </system.webServer>
</configuration>

У меня есть следующее в моих активах в angular. json

    "assets": [
      "src/favicon.ico",
      "src/assets",
      "src/web.config"
    ],

Но мое приложение делает не перенаправлять.

Проблема заключается в том, что у меня установлена ​​управляемая служба сертификации приложений для www.mydomain.com

У меня есть две настраиваемые настройки домена www.mydomain.com (этот позволяет мне добавить привязку к сертификат службы приложений) mydomain.com (не связан, так как я не могу добавить сертификат)

Поэтому я решил исправить это с помощью перенаправления всегда go на www. но, похоже, не работает

1 Ответ

1 голос
/ 23 апреля 2020

ОБНОВЛЕНИЕ

Вы можете RewriterConfig установить функцию перезаписи URL в файле web.config. Более подробно вы можете увидеть мой ответ в другом сообщении .

PRIVIOUS

Веб-сервер, интегрированный службой приложений, не может иметь полный контроль, который один из атрибутов продуктов PaaS.

Служба приложений может использовать только некоторые функции IIS. Его необходимо настроить в файле web.config в /site/wwwroot (то есть в каталоге root проекта, который вы разрабатываете). Все доступные функции IIS можно настроить только с помощью файла web.config.

решение:

• Попробуйте добавить правило перенаправления в файл веб-конфигурации. В случае сбоя вы можете использовать только функцию перезаписи шлюза приложения.

• Ниже приведены некоторые документы Application Gateway о функции перезаписи для справки.

Перенаправление

веб-трафик перенаправления c

Устранение неполадок - проблемы со службой приложения

...