Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/.htaccess/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用.htaccess将HTTP正确重定向到HTTPS?_.htaccess_Https_Http Status Code 301 - Fatal编程技术网

如何使用.htaccess将HTTP正确重定向到HTTPS?

如何使用.htaccess将HTTP正确重定向到HTTPS?,.htaccess,https,http-status-code-301,.htaccess,Https,Http Status Code 301,我的目标是通过htaccess将我的域名的所有变体永久变成https://*.com。此外,这是实现这一目标的最佳方式吗 E、 g.http:///code>,http://www。和https://www>https:// 我希望它的所有文件和/或子目录都是https://的。您只需这样做即可 RewriteEngine On RewriteCond %{HTTPS} !^on [OR] RewriteCond %{HTTP_HOST} ^www\.example\.com [NC] Rew

我的目标是通过htaccess将我的域名的所有变体永久变成https://*.com。此外,这是实现这一目标的最佳方式吗

E、 g.<代码>http:///code>,
http://www
。和
https://www
><代码>https://


我希望它的所有文件和/或子目录都是https://的。

您只需这样做即可

RewriteEngine On 
RewriteCond %{HTTPS} !^on [OR]
RewriteCond %{HTTP_HOST} ^www\.example\.com [NC]
RewriteRule ^(.*)$ https://example.com/$1 [R=301,L]

在尝试这些新规则之前,请确保清除浏览器缓存。让我知道这是怎么回事

你可以简单地这么做

RewriteEngine On 
RewriteCond %{HTTPS} !^on [OR]
RewriteCond %{HTTP_HOST} ^www\.example\.com [NC]
RewriteRule ^(.*)$ https://example.com/$1 [R=301,L]

在尝试这些新规则之前,请确保清除浏览器缓存。让我知道这是怎么回事

您好,谢谢您的回复---不过,我希望http、http www和https www都是301的https://--当然,它的子目录和文件也是https://的-请协助它对您有用吗?如果是,请勾选答案旁边的复选框接受答案。你测试过吗?正是这样。你可以在这里测试。在https www示例中键入时,它不支持301到https示例。。。这就是你的问题所在。这条规则很管用。您必须拥有有效的证书才能使其生效。SSL握手连接发生在重定向之前。你可以阅读更多关于我的另一个答案。当你安装一个有效的证书时,它会工作的。嗨,谢谢你的回复---但是,我希望http,http www和https www到所有301到简单的https://---当然它的子目录和文件也可以登陆https://请帮助它为你工作了吗?如果是,请勾选答案旁边的复选框接受答案。你测试过吗?正是这样。你可以在这里测试。在https www示例中键入时,它不支持301到https示例。。。这就是你的问题所在。这条规则很管用。您必须拥有有效的证书才能使其生效。SSL握手连接发生在重定向之前。你可以阅读更多关于我的另一个答案。当你安装一个有效的证书时,它就会工作。