我在我为Jenkins设置的.conf文件中有以下条目。
<VirtualHost *:80>
ServerName my.server.com
Redirect 301 / http://my.server.com/factory
ProxyPass /factory http://localhost:8080/factory nocanon
ProxyPassReverse /factory localhost:8080/factory
ProxyRequests Off
AllowEncodedSlashes NoDecode
<Proxy http://localhost:8080/factory*>
Order deny,allow
Allow from all
</Proxy>
</VirtualHost>
我按照预期从my.server.com重定向。但是,如果我放置一个不存在的URL,例如my.server.com/test,它会将我发送到重定向循环。我很好用不存在的网址,例如/ test显示404页面,我只是希望我的主页重定向到/ factory。
我的Apache知识目前约为0,所以如果你能解释像我这样的话会很棒。我只是试图让它运转起来并计划在我去的时候继续学习。
答案 0 :(得分:0)
First load mod_rewrite in your Apache 并尝试下面的更新配置。
<VirtualHost *:80>
ServerName my.server.com
RewriteEngine on
RewriteCond %{HTTP_HOST} ^my\.server\.com$ [NC] # if host is my.server.com
RewriteCond %{REQUEST_URI} !(^/factory$) [NC] # and request uri is NOT factory
RewriteRule ^(.*)$ http://my.server.com/factory [R=301,L] # redirect to url
ProxyPass /factory http://localhost:8080/factory nocanon
ProxyPassReverse /factory localhost:8080/factory
ProxyRequests Off
AllowEncodedSlashes NoDecode
<Proxy http://localhost:8080/factory*>
Order deny,allow
Allow from all
</Proxy>
</VirtualHost>
希望有所帮助!