
次のようなシナリオは可能ですか? 自分の Web サーバーを介してサードパーティのサイトにアクセスしたいのですが、途中でサードパーティの .CSS ファイルへのすべてのリクエストを自分のサーバー上のファイルに書き換えることは可能ですか?
答え1
はい、ただし、フェッチを実行するのはクライアントではなく、あなたの Web サーバーです。不適切な構成でこれを行うと、ネット上でオープン プロキシになる可能性があり、これはよくありません。SSL を考慮していない限り、自分のページからリモート サーバー上の CSS ファイルを直接呼び出すことで、クライアント側の並列化が向上する可能性があります。
<ifModule mod_proxy.c>
RewriteRule http://example.com/css/pretty.css http://othersite.com/css/pretty.css [P]
</ifModule>
これにより、mod_rewrite と mod_proxy が活用され、必要な処理が正確に実行され、サイトの pretty.css のリクエストがリモート サイトから取得され、自分のサイトであるかのように提供されます。
問題が発生する可能性があるのは、RewriteRule に正規表現を導入し始めるときです。
<ifModule mod_proxy.c>
RewriteRule http://example.com/css/(+*) http://othersite.com/css/$1 [P]
</ifModule>
これは、次のようなものをすべて通過しますhttp://example.com/css/../cgi-bin/mt.cfgリモート サイトに送信すると、リモート サイトはそれを正常に提供します。