Apache mod_proxy zu einem anderen Server

Apache mod_proxy zu einem anderen Server

Ich verwende den Proxy_Balancer in Apache2, um Anfragen an eine Rails-Anwendung an meinen Rails-Server auf dem Port weiterzuleiten, auf dem die Anwendung läuft. So wird es eingerichtet...

Rails Server Mongrel läuft auf Port 8000, beim Zugriff auf die URL direkt aufhttp://Rails_Server:8000Die Site wird problemlos geladen

Apache-Server Conf-Datei für die Site:

<VirtualHost *:80>
    ServerAdmin webmaster@localhost
    ServerName myserver.com
    ServerAlias application.myserver.com

    <Proxy balancer://application_cluster>
            Allow from localhost
            BalancerMember http://ip.to.server:8000 retry=10
    </Proxy>

    ProxyPass / balancer://application_cluster
</VirtualHost>

Das Problem, das ich habe, isthttp://Rails_Server:8000funktioniert gut, aber ich werdehttp://application.myserver.comLädt den richtigen Inhalt, zeigt aber das gesamte HTML als Text an und rendert es nicht als HTML

Antwort1

Versuchen Sie hinzuzufügen

ProxyPassReverse / Balancer: // Anwendungscluster

wie Inigo in seinem Kommentar sagte. Direkt unter ProxyPass.

(wow, mir ist gerade aufgefallen, dass ich mit diesem Beitrag über ein Jahr zu spät dran bin. Es handelt sich um eine „unbeantwortete Frage“, aber ich bezweifle, dass der Autor jemals zurückkommt.)

Antwort2

Ich würde den Inhaltstyp prüfen, der von den betreffenden URLs zurückgegeben wird. Es klingt, als ob eine URL „text/html“ und die andere „text/plain“ übergibt. . . Vielleicht müssen Sie in Ihrer Proxy-Konfiguration einige Inhaltstypeinstellungen ändern.

-D

verwandte Informationen