WedX - журнал о программировании и компьютерных науках

дополнительные пути с веб-приложением Azure возвращают ошибку

Я сделал приложение для реагирования, используя приложение create-response-app. Я пытаюсь развернуть его в лазурном веб-приложении. Я создал сборку и развернул ее с помощью FTP.

Когда есть внутреннее перенаправление из реагирующего приложения, я могу видеть веб-страницу. Но когда я пытаюсь напрямую перейти по URL-адресу, я получаю эту ошибку.

изображение ошибки

Например:

если базовый URL-адрес - www.example.com, а приложение внутренне перенаправляет на / new, страница переходит на www.example.com/new. Но если я попытаюсь напрямую загрузить www.example.com/new, я получаю показанный выше ответ. Этого не происходит при локальном тестировании

Демо: Я создал демо здесь


  • любые обновления? ты найдешь и исправишь проблему? 05.04.2017
  • Я создал приложение для реагирования, используя приложение create-response-app, а для развертывания я использую развертывание ftp в Azure, но я не могу понять, как решить проблему сопоставления дополнительных маршрутов при развертывании FTP 06.04.2017

Ответы:


1

Чтобы он работал у меня, я добавил web.config-файл в общую папку (здесь находятся favicon.ico, index.html & manifest.json) и добавил следующий код:

<?xml version="1.0"?>
<configuration>
  <system.webServer>
    <rewrite>
      <rules>
        <rule name="React Routes" stopProcessing="true">
          <match url=".*" />
          <conditions logicalGrouping="MatchAll">
            <add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" />
            <add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" />
            <add input="{REQUEST_URI}" pattern="^/(api)" negate="true" />
          </conditions>
          <action type="Rewrite" url="/" />
        </rule>
      </rules>
    </rewrite>
  </system.webServer>
</configuration>

Надеюсь, это поможет :)

07.08.2019
  • Большое спасибо, братан! Вы сэкономите мне много времени! 08.11.2019

  • 2

    Поместите указанный ниже файл web.config в каталог /site/wwwroot

    <?xml version="1.0"?>
    <configuration>
      <system.webServer>
        <rewrite>
          <rules>
            <rule name="React Routes" stopProcessing="true">
              <match url=".*" />
              <conditions logicalGrouping="MatchAll">
                <add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" />
                <add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" />
                <add input="{REQUEST_URI}" pattern="^/(api)" negate="true" />
              </conditions>
              <action type="Rewrite" url="/" />
            </rule>
          </rules>
        </rewrite>
      </system.webServer>
    </configuration>
    
    23.02.2018

    3

    Когда есть внутреннее перенаправление из реагирующего приложения, я могу видеть веб-страницу. Но когда я пытаюсь напрямую перейти по URL-адресу, я получаю эту ошибку.

    The resource you are looking for has been removed, had its name changed, or is temporarily unavailable.

    Если вы используете инструмент «Сеть» для захвата сетевого трафика, когда вы нажимаете кнопку Создать для рендеринга (перенаправления на) новой страницы, вы обнаружите, что он просто изменяет URL-адрес локально, а не запрашивает https://data-trigger-mass-test.azurewebsites.net/new на сервер. . Когда вы напрямую просматриваете и запрашиваете https://data-trigger-mass-test.azurewebsites.net/new на сервере, сервер не может найти ресурс, поэтому он возвращает ошибку (404). Чтобы URL https://data-trigger-mass-test.azurewebsites.net/new работал как на стороне сервера, так и на стороне клиента, вам может потребоваться настроить маршруты для него как на стороне сервера, так и на стороне клиента.

    28.03.2017
  • В этой ветке обсуждалась тема «React-router URL-адреса не работают при обновлении или написании вручную », это было бы полезно. 28.03.2017

  • 4

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

    Если сервером является NodeJs, добавьте в свой server.js что-нибудь, как показано ниже.

    app.get('*', (req, res) => {
       res.sendFile('public/index.html', { root: __dirname });
    });
    
    27.04.2017
    Новые материалы

    Объяснение документов 02: BERT
    BERT представил двухступенчатую структуру обучения: предварительное обучение и тонкая настройка. Во время предварительного обучения модель обучается на неразмеченных данных с помощью..

    Как проанализировать работу вашего классификатора?
    Не всегда просто знать, какие показатели использовать С развитием глубокого обучения все больше и больше людей учатся обучать свой первый классификатор. Но как только вы закончите..

    Работа с цепями Маркова, часть 4 (Машинное обучение)
    Нелинейные цепи Маркова с агрегатором и их приложения (arXiv) Автор : Бар Лайт Аннотация: Изучаются свойства подкласса случайных процессов, называемых дискретными нелинейными цепями Маркова..

    Crazy Laravel Livewire упростил мне создание электронной коммерции (панель администратора и API) [Часть 3]
    Как вы сегодня, ребята? В этой части мы создадим CRUD для данных о продукте. Думаю, в этой части я не буду слишком много делиться теорией, но чаще буду делиться своим кодом. Потому что..

    Использование машинного обучения и Python для классификации 1000 сезонов новичков MLB Hitter
    Чему может научиться машина, глядя на сезоны новичков 1000 игроков MLB? Это то, что исследует это приложение. В этом процессе мы будем использовать неконтролируемое обучение, чтобы..

    Учебные заметки: создание моего первого пакета Node.js
    Это мои обучающие заметки, когда я научился создавать свой самый первый пакет Node.js, распространяемый через npm. Оглавление Глоссарий I. Новый пакет 1.1 советы по инициализации..

    Забудьте о Matplotlib: улучшите визуализацию данных с помощью умопомрачительных функций Seaborn!
    Примечание. Эта запись в блоге предполагает базовое знакомство с Python и концепциями анализа данных. Привет, энтузиасты данных! Добро пожаловать в мой блог, где я расскажу о невероятных..


    Для любых предложений по сайту: [email protected]