![O proxy reverso do Apache não funciona dentro de um VirtualHost executando um aplicativo Web Mono](https://rvso.com/image/568275/O%20proxy%20reverso%20do%20Apache%20n%C3%A3o%20funciona%20dentro%20de%20um%20VirtualHost%20executando%20um%20aplicativo%20Web%20Mono.png)
Eu tenho um aplicativo web mono em execução com este host virtual abaixo. Ele está rodando em Apache 2.2.20/Ubuntu 11.10. Tentei adicionar um proxy reverso dentro deste virtualhost para poder fazer chamadas assíncronas ou do tipo AJAX de volta para este mesmo domínio. Minhas solicitações assíncronas teriam problemas em muitos navegadores que chamam serviços que estão em outro domínio (problema de solicitações entre domínios). Estou querendo fazer chamadas de proxy reverso para este outro serviço usandohttp://www.whatever.com/monkey/. Então, adicionei a diretiva e a diretiva principal para tentar fazer isso funcionar. É estranho...nada do que eu faço parece ter algum efeito. Posso colocar exatamente a mesma marcação no arquivo virtualhost do meu site padrão e funciona muito bem. Qual é o acordo? Algumas dessas diretivas Mono estão causando problemas?
<VirtualHost *:80>
ServerName www.whatever.com
ServerAlias whatever.com *.whatever.com
ServerAdmin [email protected]
DocumentRoot /home/myuser/web/whatever
ProxyRequests off
<Proxy *>
Order allow,deny
Allow from all
</Proxy>
<Location /monkey/>
ProxyPass http://www.google.com/
ProxyPassReverse http://www.google.com/
</Location>
MonoServerPath www.whatever.com "/usr/bin/mod-mono-server2"
MonoSetEnv www.whatever.com MONO_IOMAP=all
MonoApplications www.whatever.com "/:/home/myuser/web/whatever"
<Location "/">
Allow from all
Order allow,deny
MonoSetServerAlias www.whatever.com
SetHandler mono
SetOutputFilter DEFLATE
SetEnvIfNoCase Request_URI "\.(?:gif|jpe?g|png)$" no-gzip dont-vary
</Location>
<IfModule mod_deflate.c>
AddOutputFilterByType DEFLATE text/html text/plain text/xml text/javascript
</IfModule>
</VirtualHost>
Responder1
Eu acho que o <Location /> SetHandler mono está sendo aplicado a <Location /monkey>. Você provavelmente precisará de um "SetHandler none" explícito dentro de <Location /monkey> para remover o manipulador mono e deixar o Apache executar as diretivas ProxyPass*.