Apache2 Proxy Error не удалось обработать запрос GET / - PullRequest
0 голосов
/ 24 апреля 2019

Я запускаю сервер apache2 на моей машине suse.Также на этом компьютере suse работает приложение SAP HANA.На моем сервере HANA выполняется веб-приложение.Поэтому, когда я открываю браузер на своем Suse, подсказки localhost: 51069, я могу использовать это приложение.Поскольку он работает на этом порту.

Этот веб-сайт должен работать на 80-м порту моей системы suse, чтобы он мог нормально вызываться из Интернета с помощью браузера.Для этого я хочу перенаправить этот порт с моего сервера Apache.Вот мой конфиг для моего статического виртуального хоста, это имя хоста моего suse-сервера и может быть решено для моего локального ip:

<VirtualHost *:80>
 ServerName static
 ServerAdmin me

 ProxyPreserveHost On
 ProxyRequests Off
 ProxyPass / http://static:51069/
 ProxyPassReverse / http://static:51069
</VirtualHost>

Когда я открываю страницу, я получаю ошибку

Proxy Error
The proxy server received an invalid response from an upstream server.
The proxy server could not handle the request GET/

Reason: Error reading from remote server
Additionally, a 502 Bad Gateway error was encouterd while trying to 
use an ErrorDocument to ahandle the request

Когда я просматриваю файл ошибок, я вижу, что erorr является последней ошибкой:

Error reading from remote server returned by 
/error/HTTP_BAD_GATEWAY.html.var 

возможно, что сбой моей службой behinde 51069

1 Ответ

1 голос
/ 25 апреля 2019

Хорошо, теперь я понял, что вы пытаетесь сделать. На самом деле вам даже не понадобится vhost, потому что все директивы можно использовать и в стандартной конфигурации сервера.


Но теперь о двух проблемах. Сначала самая легкая часть - Странная ошибка страницы

Apache попытался обслужить запрошенный URL, но произошла ошибка 502. Apache настроен на отправку всех запросов (включая ошибки) на сервер (HANA). Бэкэнд не смог доставить страницу с ошибкой 502, поэтому Apache выдает 500, которую вы можете увидеть в своем браузере.

решение: Директива ProxyErrorOverride [On / Off] позволяет вам выбрать, откуда должна появиться страница с ошибкой. В вашем случае «Вкл.», Чтобы Apache доставил страницу с ошибкой, даже если серверная часть не может.

ProxyErrorOverride On

Теперь самое сложное: Ошибка Bad Gateway с вашего сервера hana

Есть много возможных причин для этого, поэтому это сложно. Возможные причины включают в себя:

  • время ожидания ответов от бэкэнда
  • неожиданный формат ответа
  • серверный сбой или недоступность (хотя обычно это приводит к 503), проверьте ваш веб-диспетчер SAP на всякий случай
  • потоков тайм-аута сервера HANA

Вы обязательно должны проверить трассировки SAP по умолчанию. Как только я смогу вывести «реальное» из вашего следующего ответа, я обновлю свой ответ соответствующим образом.

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