私はapache http webserver 2.2.29をプロキシとして設定しました。その機能は、着信要求をバックエンドサーバーにリダイレクトすることです。以下はその流れです。Mod_rewriteがApacheで動作していません
クライアントは、URL https://iproxy.company.co.uk:8443/cis1
を使用してリクエストを送信します。 Apacheインスタンスはiproxy.company.co.uk:8443
でリッスンしています。このリクエストは、URL https://i.company.co.uk:8443
のバックエンドサーバーに送信する必要があります。これを達成するために、mod_rewriteを使用しました。以下はhttpd-alias.confファイルで設定します。
`Listen iproxy.company.uk:8443
ServerName iproxy.company.uk:8443
DocumentRoot /app/
RewriteEngine On
RewriteRule (.*)$ https://i.company.co.uk:8443$1 [R=301,L]
ProxyPassReverse "/products/widget/" "http://product.example.com/widget/"
RewriteLog /app/instance1/logs/rewrite.log
RewriteLogLevel 5
ErrorLog "/app/instance1/logs/error_log"
TransferLog "/app/instance1//logs/access_log"
SSLEngine on
SSLProtocol all -SSLv2 -SSLv3
SSLCipherSuite HIGH:!MEDIUM:!aNULL:!MD5:!RC4
SSLCertificateFile "/app/certificates/star.cer"
SSLCertificateKeyFile "/app/certificates/star.key"
SSLCertificateChainFile "/app/certificates/rootCAChain.pem"
CustomLog "/app/instance1/logs/ssl_request_log" \
"%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x \"%r\" %b"
</VirtualHost>`
私は書き換えログに下記取得していますレベル5に書き換えlogginをも構成しています。
私がチェックするために、コマンドの下に当たっていますリダイレクトが
出力<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> <html><head> <title>301 Moved Permanently</title> </head><body> <h1>Moved Permanently</h1> <p>The document has moved <ahref="http://i.company.co.uk:8443/cis1">here</a>.</p> </body></html>
の下に取得
curl -k https://iproxy.company.co.uk:8443/cis1
を動作するか私はまた、以下を参照することができます書き換えログに出力されます。
redirect to https://i.company.co.uk:8443/ci1 [REDIRECT/301]
ので、私はリダイレクトが正常に動作していると仮定しています。しかし、そうではありません。サーバはリクエストを受けていませんか?私はコンフィギュレーションに何か間違っていますか?
更新: 私は最後に[P]を追加してRewriteRuleディレクティブを更新しました。これはうまくいって問題は解決しました。
RewriteRule (.*)$ https://sit-alfresco.rpmi.co.uk:443$1 [P]
ウィルはProxyPassが着信要求と同じURIを維持することができ、私はそれぞれに異なるようにURIを期待していますrequest – user2607367
上記の設定では、https://iproxy.company.co.uk:8443/cis1のページhttps://i.company.co.uk:8443/cis1の内容が表示されます。他のページについても同様です。基本的にはホストをマッピングします。そのページの絶対参照はi.company.co.ukのままになります(ただし、これも同様です)。それがあなたが望んでいないものなら、私はそれがあなたの質問を明確にするのが最善だと思います。 –
それは今私のために働いています。たくさんありがとう。私は答えに質問を更新しました – user2607367