为我的网站使用HTTP和HTTPS

时间:2016-02-04 03:52:13

标签: apache .htaccess http https

HTTP和HTTPS的工作取决于浏览器中的用户类型。 示例我有一个名为http:// example的网站。 com它正在工作和生活,然后我想让它适用于像https:// example这样的东西。融为一体

如果用户键入

http: //example .c om

它会起作用,同样

https: //example .c om

我有像这样的htaccess文件

Options FollowSymLinks
RewriteEngine on

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d


RewriteRule ^(.*)$ index.html

我尝试过使用此

RewriteCond %{SERVER_PORT}s ^(443(s)|[0-9]+s)$
RewriteRule ^(.*)$ - [env=askapache:%2]

RewriteCond %{SERVER_PORT} 443
RewriteRule ^(.*)$ https: // example. com/$1 [P,L]

RewriteRule ^(.*)$ http:// example . com/$1 [P,L]

和这个

RewriteCond %{HTTPS} =on
RewriteRule ^(.*)$ - [env=ps:https]
RewriteCond %{HTTPS} !=on
RewriteRule ^(.*)$ - [env=ps:http]

仍然无法正常工作。我只能访问http但https我不能。 example.c o m只是一个简单的网页,不包含任何安全风险。 我的链接上有空格,因为我不能发布超过1个链接

2 个答案:

答案 0 :(得分:0)

要从http重定向到https,您可以使用以下规则:

RewriteEngine on


#Check if we are already not on https
RewriteCond %{HTTPS} !on
#Then, redirect http to https
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [NC,L,R]

答案 1 :(得分:0)

HTTPS不是通过htaccess简单启用的,它需要使用签名的SSL证书在您的网络服务器上启用和配置。如果您使用的是托管服务提供商,例如bluehosthostgator,则需要与其支持团队联系,以便在您的网站上设置HTTPS。否则:

  1. 获取证书herehere
  2. 了解如何在ApacheNginX网络服务器上安装