2016-11-04 1 views
0

Apache Webサーバー(A)から別のマシン(B)の別のApache Webサーバーにリバースプロキシを設定しようとしています。Apacheリバースプロキシがアセットのパスを歪めている

サーバBにあるウェブページにアクセスすることはできますが、すべてのアセットのパス(画像、CSS、JSなど)は歪んでいました。

私は、サーバーA上の設定の下で使用

:アプリケーションが生成するので、バックエンドのアプリケーションは、代わりにあなたが要求している公共のURLの「some.host.address」とのリンクを生成しているされて何の意味

ProxyPass "/app1/" "http://some.host.address:8080/app1/" 
ProxyPassReverse "/app1/" "some.host.address:8080/app1/" 
ProxyHTMLURLMap "http://some.host.address:8080" "/app1" 

<Location /app1/> 
     ProxyPassReverse /app1/ 
     ProxyHTMLEnable On 
     ProxyHTMLURLMap//app1/ 
</Location> 
+0

「すべてのアセットのパスが歪んでいます」とは、正確に何を意味していますか?彼らはどのように見えましたか? – arkascha

+0

「ひずんでいる」と言うと、私はブラウザがそれらにアクセスできないことを意味しました。たぶん、私の問題を説明するには、言葉にアクセスできないという方が良いでしょう。ごめんなさい。) –

+0

あなたの説明からはっきりと分かりました。しかし、まだ問題は残っています:リンクはどのように見えるのですか? – arkascha

答えて

0

相対リンクではなく、ホスト名も含みます。

用途:

ProxyPreserveHost on 

し、再試行してください。これにより、クライアントがバックエンドに要求したものと同じホスト名が送信され、バックエンドアプリケーションは必要な名前を使用します。

+0

I私の設定でこれを持っています。とにかく私が直面している問題は、資産の経路の歪みに関係していません。一部の資産に対して常にERR_CONTENT_DECODING_FAILEDエラーが発生しています。 よろしくお願いします。http://stackoverflow.com/questions/40683850/apache-proxying-leads-to-err-content-decoding-failed-error –

関連する問題