.htaccess将http重定向到https,将www重定向到所有域的共享godaddy服务器上的非www

时间:2017-01-26 22:43:41

标签: php apache .htaccess ssl redirect

所以我们最近不得不在我们的经典Linux共享Godaddy服务器(4GH)上安装50域UCC SSL证书......这似乎是在Apache 2.2上运行的。当使用godaddy在他们的帮助文章中给我们的默认通用重定向时:

RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

我们不会遇到托管主域名的问题,但是,只要有人访问任何"托管域名/地址域名"我们遇到的问题是Apache在request_uri($ 1)中包含所述域的文件夹路径,如 - https://addondomain.com/addondomain/file.html

为了解决这个问题,我写了我的规则来检查:

RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC]
RewriteRule \/(.*\.html)$ https://%1/$1

但是,这显然只适用于我的特定情况,其中插件域只位于一个文件夹深处并导致html文件...如果您的插件域位于{{1},则必须重写此文件}}

我们还需要将所有www流量重写为非www,并在此处遇到几个问题,例如/sites/addonfolders/addondomain/file.php正确地重定向到http://www.domain.com,但如果您手动输入{{} 1}}它不能正确重定向。

经过大约4天的撞击我的头(有时是字面意思),并且学习https://domain.com后,我发现这完全按预期工作:

https://www.domain.com

现在效果很好,但有没有更好的方法来实现相同的效果,适用于GoDaddy 4GH Linux服务器(不是cpanel)?

修改 结束只需在所有50个域中单独使用以下内容:

mod_rewrite

0 个答案:

没有答案