我有一个与Godaddy.com共享的托管帐户,用于托管五个不同的网站(site1.com,site2.com ).网站( site5.com)我想在/目录中放置一个.htaccess文件,使所有五个不同的网站都重定向到每个站点的非www和ssl版本。
现在,我的.htaccess文件中有以下内容:
Options +FollowSymLinks -MultiViews
RewriteEngine On
RewriteCond %{HTTP_HOST} ^www.site1.com
RewriteRule (.*) https://site1.com/$1 [R=301,L]
RewriteCond %{HTTP_HOST} ^www.site2.com
RewriteRule (.*) https://site2.com/$1 [R=301,L]
RewriteCond %{HTTP_HOST} ^www.site3.com
RewriteRule (.*) https://site3.com/$1 [R=301,L]
RewriteCond %{HTTP_HOST} ^www.site4.com
RewriteRule (.*) https://site4.com/$1 [R=301,L]
RewriteCond %{HTTP_HOST} ^www.site5.com
RewriteRule (.*) https://site5.com/$1 [R=301,L]设置站点的目录结构,以便index.html for site1位于/public_html/index.html
另外四个站点的索引文件位于: /public_html/site#/index.html中,有四个不同的site#目录
当我在浏览器中键入站点2-4 URL的www版本时,服务器将自动重定向到https版本:
网站#..com/其他网站/网站#.
我想如果每个网站重定向到ssl,即使访问者没有进入www版本的网站。我知道我需要一个额外的RewriteCond和RewriteRule,但不知道使用什么代码。
我只是学习RegEx和服务器配置,所以任何帮助都将不胜感激。
发布于 2016-08-21 02:09:57
您可以使用:
Options +FollowSymLinks -MultiViews
RewriteEngine On
RewriteCond %{HTTP_HOST} ^www\.(.+) [NC]
RewriteRule ^ https://%1%{REQUEST_URI} [NE,L,R=301]
RewriteCond %{HTTPS} off
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [NE,L,R=301]https://stackoverflow.com/questions/39059834
复制相似问题