RewriteRule で HTTP_HOST ヘッダーを使用する必要がありますが、ホスト ヘッダーとは異なるため、SERVER_NAME を使用できないポートを変更します (これが必要です)。
mod_rewrite の HTTP_HOST 変数から :port を削除する方法はありますか?
RewriteRule で HTTP_HOST ヘッダーを使用する必要がありますが、ホスト ヘッダーとは異なるため、SERVER_NAME を使用できないポートを変更します (これが必要です)。
mod_rewrite の HTTP_HOST 変数から :port を削除する方法はありますか?
はい、ホストヘッダーからポートを削除できます。照合して後方参照%{HTTP_HOST}を使用するだけ%1です。例えば:
RewriteCond %{HTTP_HOST} ^([^:]+)(:[0-9]+)?$
RewriteRule ^ http://%1:12345/ [R,L]
%1後方参照は、の最初のパラメーターでのみ使用できRewriteCond、一致では使用できないことに注意してください。
RewriteCond %{HTTP_HOST} ^([^:]+)(:[0-9]+)?$
RewriteCond %1 ^the.hostname.com$ [NC]
大丈夫です
RewriteCond %{HTTP_HOST} ^([^:]+)(:[0-9]+)?$
RewriteCond %{REQUEST_URI} ^%1
大丈夫ではありません