Apache mod_proxy を別のサーバーへ

Apache mod_proxy を別のサーバーへ

私は、Apache2 の proxy_balancer を使用して、Rails アプリケーションへのリクエストを、アプリケーションが実行されているポート上の Rails サーバーにプロキシしています。設定方法は次のとおりです...

Rails サーバー ポート8000​​で実行されているMongrelは、URLに直接アクセスすると、http://rails_server:8000サイトは問題なく読み込まれます

Apache サーバー サイトの conf ファイル:

<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>

私が抱えている問題はhttp://rails_server:8000問題なく動作しますが、http://application.myserver.com正しいコンテンツを読み込みますが、すべての HTML がテキストとして表示され、HTML としてレンダリングされません。

答え1

追加してみてください

ProxyPassReverse / バランサー://application_cluster

Inigo がコメントで言ったように。ProxyPass のすぐ下です。

(わあ、この投稿が 1 年以上遅れていることに今気づきました。これは「未回答の質問」ですが、著者が戻ってくることはないと思います)

答え2

問題の URL によって返されるコンテンツ タイプを確認します。一方は「text/html」を渡し、もう一方は「text/plain」を渡しているようです。プロキシ構成でコンテンツ タイプ設定の一部を変更する必要があるかもしれません。

-d

関連情報