こんにちは、リクエストされたURLをGETパラメーターとして宛先URLに渡すようにProxyPassを設定しようとしていますが、構成ファイルに書き込む方法がわかりません。
私はこのようなものを試しました:
ProxyPass ^(.*)$ http://example.com/?url=$1
ProxyPassReverse ^(.*)$ http://example.com/?url=$1
しかし、それは機能しません。手伝ってくれませんか?ありがとう!
ProxyPassMatch
ディレクティブのドキュメント に記載されているように、正規表現を使用する場合は、 ProxyPass
ディレクティブを使用する必要があります。
urlはリモートサーバーの部分的なURLであり、クエリ文字列を含めることはできません。
その結果、 RewriteRule
ディレクティブ を使用し、 [P]
フラグ を設定して、リクエストを次のように処理する必要があります。 mod_proxy
によるプロキシリクエスト。
これにはおそらく微調整が必要ですが、開始点は次のとおりです。
RewriteEngine On
RewriteCond %{REQUEST_URI} !^/foo
RewriteRule ^(.*)$ /foo?url=$1 [P]
ProxyPass /foo http://example.com/
ProxyPassReverse /foo http://example.com/