Estou usando meu apache como um proxy reverso para algumas solicitações em um servidor da Web em execução em uma porta interna para permitir acesso por meio de meu host virtual regular. Isso é em um Ubuntu 15 rodando em vagrant.
Aqui está minha configuração de virtualhost:
<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>
Por um tempo, isso funciona bem. No entanto, depois de um tempo, de repente, todas solicitações para esse host virtual são intermediadas por proxy para o servidor da Web interno. Portanto, se eu chamar http://test.vm/cron/mails.php
, primeiro, será executado mails.php
conforme o esperado. No entanto, após uma quantidade aleatória de tempo ou evento, o URL mencionado acima começará a exibir respostas de Mailcatcher .
The message you were looking for does not exist, or doesn't have content of this type
Este é um erro do Mailcatcher que você recebe quando solicita uma mensagem que não existe mais.
Esse serviço, o Mailcatcher, é iniciado com minha VM e é executado o tempo todo. O estranho é que eu não tenho esse problema quando estou fazendo outras coisas na VM (há um aplicativo da web em execução). Somente quando estou ativamente depurando e-mails e usando o Mailcatcher gui, de repente sinto isso de vez em quando.
Esperar um pouco ou reiniciar o apache "resolve" esse problema até que ele seja exibido da próxima vez. Alguém pode me ajudar sobre isso? Eu configurei meu proxy errado?
Obrigado.