我强制HTTPS和redirect到子目录:
RewriteCond %{HTTPS} off RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [R=301] RewriteCond %{HTTP_HOST} ^domain.com$ [NC,OR] RewriteCond %{HTTP_HOST} ^www.domain.com$ RewriteRule (.*) /www_domain_com/$1
所有的工作,但http://www.domain.com 。 我在浏览器地址栏中看到: https://www.domain.com/www_domain_com/ : https://www.domain.com/www_domain_com/ 。
我的目标是从url中删除这个子目录,并在所有请求中都有ssl,并将所有请求redirect到该子目录。
首先,确保在conf文件中有以下行:
RewriteEngine On
然后尝试以下操作:
RewriteCond %{HTTP_HOST} ^domain.com$ [NC,OR] RewriteCond %{HTTP_HOST} ^www.domain.com$ RewriteRule (.*) https://www_domain_com%{REQUEST_URI}
我有他们合并在我的conf文件,这是组合的版本:
RewriteEngine On RewriteCond %{HTTPS} off [NC, OR] RewriteCond %{HTTP_HOST} !^domain.com [NC, OR] RewriteCond %{HTTP_HOST} !^www.domain.com [NC] RewriteRule (.*) https://domain.com%{REQUEST_URI}