以下の行を含む仮想ホスト名example.conf
があります。
<VirtualHost *:80>
ServerName example.com
ServerAdmin [email protected]
LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-agent}i\"" combined
CustomLog /var/log/httpd/app1_access.log combined
ErrorLog /var/log/httpd/app1_error.log
redirect / http://example.com/jenkins
DirectoryIndex index.html index.php
JkMount /jenkins/* failover
JkMount /jenkins failover
</VirtualHost>
誰かがhttp://example.com
を押すと、http://example.com/jenkins
が開くはずです。
私のURLはにリダイレクトされています
http://example.com/jenkinsjenkinsjenkinsjenkinsjenkinsjenkinsjenkinsjenkinsjenkinsjenkinsjenkinsjenkinsjenkinsjenkinsjenkinsjenkinsjenkins
このような。
これは、ApacheWebサーバーを備えたTomcat上のJenkinsです。どんな助けでも大歓迎です。
redirect / http://example.com/jenkins
同じホストにリダイレクトする場合、Redirect
ディレクティブは単純なプレフィックス照合を使用し、照合後のすべてがターゲットURLの末尾にコピーされるため、これは実際にリダイレクトループになります。したがって、次のようになります。
/
(最初のリクエスト)/jenkins
(最初のリダイレクト)/jenkinsjenkins
(2番目のリダイレクト)代わりにRedirectMatch
ディレクティブを使用して、ドキュメントルートのみを照合できるようにする必要があります。 RedirectMatch
(これもmod_aliasの一部)は、プレフィックス一致の代わりに正規表現を使用して一致します。例えば:
RedirectMatch 302 ^/$ http://example.com/jenkins
これが302(一時的)リダイレクト(デフォルト)であることを明確にするために、オプションステータスコード引数を含めました。
サーバー構成に変更を加えた後、Apacheを再起動する必要があります。また、いつものように、テストする前にブラウザのキャッシュをクリアしたことを確認してください。