【发布时间】:2019-10-10 21:27:17
【问题描述】:
我找不到可以回答我的问题,或者我无法使用正确的术语进行搜索,但请继续。我的 htaccess 中有以下规则:
RewriteEngine On
RewriteCond %{HTTP_HOST} ^domain\.com\.br$ [OR]
RewriteCond %{HTTP_HOST} ^www\.domain\.com\.br$
RewriteRule ^(.*)$ "https\:\/\/www\.domain\.com\.br\/site" [R=301,L]
这在用户仅输入 URL(domain.com.br 或 www.domain.com.br)时有效,但当用户以这种方式访问时我需要它重定向:
domain.com.br 或 www.domain.com.br --> https://www.domain.com.br/site
domain.com.br/XXX --> https://www.domain.com.br/XXX
我应该为此使用什么规则?
更新:服务器已经有强制SSL的默认规则,这种情况下不需要放在htaccess中
规则更新:
**On virtual host:**
RewriteEngine On
RewriteCond %{HTTPS} !=on
RewriteCond %{HTTP:X-Forwarded-Proto} !https [NC]
RewriteCond %{HTTP_HOST} !^www\. [NC]
RewriteRule ^ https://www.%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
**On htaccess file:**
RewriteCond %{HTTP_HOST} ^domain\.com\.br$ [OR]
RewriteCond %{HTTP_HOST} ^www\.domain\.com\.br$
RewriteRule ^/?$ https://www.domain.com.br/site/ [R=301,L]
【问题讨论】:
标签: apache .htaccess mod-rewrite