Я использую свой apache в качестве обратного прокси для нескольких запросов к веб-серверу, работающему на внутреннем порте, чтобы разрешить доступ через мой обычный виртуальный хост. Это на ubuntu 15, работающем в бродячем режиме.
Вот моя конфигурация виртуального хоста:
<VirtualHost *:80>
DocumentRoot /vagrant/htdocs
ServerName test.vm
# proxy pass mailcatcher to internal webserver
<Location /mailcatcher>
ProxyPass http://localhost:1080
ProxyPassReverse http://localhost:1080
</Location>
<Location /assets>
ProxyPass http://localhost:1080/assets
</Location>
<Location /messages>
ProxyPass ws://localhost:1080/messages
ProxyPassReverse http://localhost:1080
</Location>
<Directory />
Require all granted
</Directory>
<Directory /vagrant/htdocs>
AllowOverride all
</Directory>
</VirtualHost>
Какое-то время это нормально работает. Однако спустя время внезапно все запросы к этому виртуальному хосту передаются на внутренний веб-сервер. Так что если я позвоню http://test.vm/cron/mails.php
сначала он будет работать mails.php
как и ожидалось. Однако по прошествии случайного промежутка времени или события внезапно вышеупомянутый URL начнет обслуживать ответы от Mailcatcher.
Сообщение, которое вы искали, не существует или не имеет содержимого этого типа.
Это ошибка Mailcatcher, которую вы получаете, когда запрашиваете сообщение, которое больше не существует.
Эта служба Mailcatcher запускается на моей виртуальной машине и работает все время. Странно то, что у меня не возникает этой проблемы, когда я занимаюсь другими делами на виртуальной машине (на ней работает веб-приложение). Только когда я активно отлаживаю почту и использую графический интерфейс Mailcatcher, я внезапно иногда испытываю это.
Немного подождать или перезапустить apache «решит» эту проблему, пока она не появится в следующий раз. Может ли кто-нибудь помочь мне в этом? Я неправильно настроил прокси?
Спасибо.