使.htaccess文件中的https重定向仅在线工作

时间:2016-05-05 02:15:38

标签: php apache .htaccess

我刚创建了第一个加密(https)网站。我被告知最好在我的" canonical"中使用https。链接并使用我的.htaccess文件将流量重定向到新的https链接。我找到了该任务的代码here

RewriteCond %{HTTPS} off
# First rewrite to HTTPS:
# Don't put www. here. If it is already there it will be included, if not
# the subsequent rule will catch it.
RewriteRule .* https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
# Now, rewrite any request to the wrong domain to use www.
RewriteCond %{HTTP_HOST} !^www\.
RewriteRule .* https://www.%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

在线工作正常。问题是它弄乱了我的本地网站。这不是一个大问题;我可以简单地制作单独的.htaccess文件 - 一个用于在线,一个用于本地用途。但这将是一个小麻烦,所以我想知道是否还有其他解决方案。

我的本​​地网页不会显示在https上,所以我想知道是否有办法告诉我的.htaccess文件,使这条新规则仅适用于网上。

修改

也许我应该改写我的帖子,询问你如何处理这种情况。我甚至不确定.htaccess是否是这里唯一的玩家......

1 个答案:

答案 0 :(得分:1)

  1. 请勿使用本地主机上的.htaccess文件。
  2. 加密您的本地主机。使用openssl免费制作自签名证书非常容易。