Доступ к Wordpress за шлюзом приложений Azure - PullRequest
0 голосов
/ 12 ноября 2018

У меня есть сайт Wordpress, размещенный в веб-приложении Azure. Он работает нормально, когда к нему непосредственно обращается веб-приложение. Но когда я помещаю его за шлюз приложений Azure, я получаю сообщение об ошибке «Too_Many_Redirects».

У меня есть еще один веб-сайт за шлюзом приложений, который не является Wordpress, и этого не происходит.

Кто-нибудь когда-либо испытывал это? Есть ли какие-то конкретные настройки или обходные пути, чтобы это работало?

Редактировать 1 ----

Конфигурации шлюза приложений:

  • Датчик здоровья Health Probe settings

    • Настройки HTTP HTTP settings

    • Слушатель Listener settings

    • Бэкэнд-пул Backend Pool settings

    • Правило Rule settings

Конечная точка веб-приложения находится в HTTPS.

Редактировать 2 ----

  • Здоровье Бэкэнда Backend Health

Сегодня я провел много тестов и нашел способ сделать эту работу, но не решил проблему, вместо этого создал другой. В Wordpress в настройках «SiteURL» и «Домашняя страница» вместо того, чтобы использовать нужный адрес, пользовательский, я использовал адрес по умолчанию, предоставленный Azure Web App. При этом ошибка TOO_MANY_REDIRECTS исчезла, но ссылки моего сайта изменились на * .azurewebsites.net, что является большой проблемой.

Я попробовал «домашний» адрес с HTTPS и HTTP. Безуспешно.

Я только что обнаружил, что даже без SSL проблема возникает. Работает только с адресом «azurewebsites», который нарушает мои ссылки.

Ответы [ 3 ]

0 голосов
/ 30 ноября 2018

Я наконец решил этот вопрос! В моей первоначальной конфигурации есть две основные проблемы.

  1. Необходим для использования HTTPS во всем процессе, сквозной. Итак, я должен использовать протокол HTTPS в конфигурации настроек HTTP. Для использования HTTPS в настройках HTTP требуется также Health Health Probe с протоколом HTTPS.

  2. Внутренний пул не может указывать на параметр «Службы приложений». Вместо этого я использовал «IP-адрес или полное доменное имя» и поместил адрес веб-сайта в поле имени. Когда я указываю на параметр «Служба приложения» и выбираю соответствующее веб-приложение, оно пытается связаться с веб-приложением по адресу по умолчанию (* .azurewebsites.net), что заставляет Wordpress перенаправить его на пользовательский адрес, который попадает в снова шлюз приложений и т. д.

После изменения этих двух (трех) параметров необходимо также перенастроить параметры правила.

В таком случае мне не нужно ничего менять в конфигурации моего веб-приложения или Wordpress.

0 голосов
/ 21 июня 2019

Вы можете отключить перенаправления Wordpress, поставив

remove_action('template_redirect', 'redirect_canonical');

в конце файла wp_config.php. Для меня на Ubuntu 18.04 это было в / var / www / wordpress.

У меня была похожая проблема. Имейте в виду, я очень новичок в разработке. Я должен был предоставить виртуальную машину Ubuntu 18.04 в Azure с WordPress. Мне нужно было использовать шлюз приложений для маршрутизации трафика, поступающего с компьютера. Я использую Azure App Gateway v2. Мое пользовательское доменное имя указывает на публичный IP-адрес шлюза приложения. В виртуальной машине Ubuntu я установил Apache, а в конфигурационном файле apache поставил DocumentRoot /var/www/wordpress и все остальные настройки для соединения https. Тем не менее, с этой настройкой Wordpress перенаправлял меня на частный IP-адрес, поэтому у пользователя начался переход с URL-адреса с www.XXXXX.com на 10.X.X.X. Затем я попытался переключить имя хоста в WordPress на www.XXXXXX.com, но это сделало сайт полностью безразличным. В конце я использовал эту строку, чтобы отключить перенаправления Wordpress, и теперь она работает как надо. Я, вероятно, проектировал его неправильно, поэтому сначала рассмотрим другие решения.
редактировать: некоторые опечатки

0 голосов
/ 18 ноября 2018
  1. Убедитесь, что у вас нет какого-либо дополнительного перенаправления, установленного из шлюза приложений.

  2. Вы можете взять трассировку скрипача и посмотреть, кто бросает 301.

  3. Убедитесь, что у вас отключено перенаправление и аутентификация в WebApp

  4. Возможно, на сайте Wordpress настроено перенаправление, просто взгляните на него один раз.

Я почти уверен, что это WebApp, а не шлюз приложений.

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