在apache v2.4中编写重写规则需要一些帮助。
我有一个托管在tomcat v8.0.29中的网络应用程序,它有这个网址:
通过mod_jk和apache重写引擎的魔力,我已经能够将其清理到http://myapptest。
我现在已经在apache中配置了SSL,我需要http://myapptest和https://myapptest才能重定向到https://myapptest.domain.com。
在httpd-ssl.conf中,我有这个vhost配置来处理重写内容:
<VirtualHost _default_:443>
ServerName myapptest
RewriteEngine on
RewriteRule ^/$ /app [NC,PT,L]
DocumentRoot "c:/apache/tomcat/webapps/app"
JkMount /* myapp
ErrorLog "logs/myapptest-error.log"
CustomLog "logs/myapptest-access.log" common
...other stuff...
</VirtualHost>
然后,在httpd-vhosts.conf中我处理端口80上http流量的重定向。
<VirtualHost myapptest:80>
ServerName myapptest
Redirect / https://myapptest.domain.com/
</VirtualHost>
我遗失的最后一篇文章是如何处理https://myapptest的重定向?
如果有更好,更清洁的方式来处理这个问题,我对此非常开放,因为我不是这方面的专家。
答案 0 :(得分:0)
避免VirtualHost标记内的主机名:
# First listed is the default for port 80
<VirtualHost *:80>
ServerName myapptest.domain.com
</VirtualHost>
# Capture the short hostname and redirect to FQDN
<VirtualHost *:80>
ServerName myapptest
Redirect / https://myapptest.domain.com/
</VirtualHost>