正如文科所说,
RewriteLog "/tmp/rewrite.log"RewriteLogLevel 9
并查看该文件。
否则,这是我们用来从zirconium.zrs.hr/~zatemas重定向到zatemas.zrs.hr的代码:
RewriteEngine on# For sites running on a port other than 80RewriteCond %{HTTP_HOST} !^zatemas.zrs.hr [NC]RewriteCond %{HTTP_HOST} !^$RewriteCond %{SERVER_PORT} !^80$RewriteRule ^/~zatemas/(.*) http://zatemas.zrs.hr:%{SERVER_PORT}/$1 [L,R]# And for a site running on port 80RewriteCond %{HTTP_HOST} !^192.168.1.24 [NC]RewriteCond %{HTTP_HOST} !^zatemas.zrs.hr [NC]RewriteCond %{HTTP_HOST} !^$RewriteRule ^/~zatemas/(.*) http://zatemas.zrs.hr/$1 [L,R]我在网上看到人们主要是通过查看端口是否为443来检测HTTPS的。mod_rewrite文档说应该适当地将HTTPS变量设置为on或off-
我想您
RewriteCond %{HTTPS} ^on$要测试一下它是否打开。另请注意:
.htaccess如果要访问用户主目录中的文件(例如example.com/~username/),则URL重写指令不能很好地工作。但是,这不会根据您的情况困扰您。我上面的代码位于部分的主服务器配置中
VirtualHost(更确切地说,在中
/etc/apache2/sites-enabled/000-default,但这是debian特定的,并在主配置中合并)。



