http跳转到https

管理员 温柔哥 25天前 318

简陋的办法:

根目录新建一个index.html,内容如下:

<html>  

<meta http-equiv="refresh" content="0;url=https://www.vpshz.com/index.php">  

</html> 

----------------------------------------------------------------

如果虚拟主机是Linux主机

需要在你的网站根目录下的.htaccess文件(没有需要创建一个)中添加下面代码然后保存即可:

RewriteEngine On
RewriteCond %{SERVER_PORT} 80   或者RewriteCond %{SERVER_PORT} !^443$
RewriteRule ^(.*)$ https://www.vpshz.com/$1 [R,L]

当然,如果想指定某一个文件使用https,则添加一下代码(此时.htaccess文件需要放在你指定的文件夹中):

RewriteEngine On
RewriteCond %{SERVER_PORT} 80  或者RewriteCond %{SERVER_PORT} !^443$
RewriteCond %{REQUEST_URI} somefolder
RewriteRule ^(.*)$ https:/www.vpshz.com/somefolder/$1 [R,L]


如果虚拟主机是Windows主机:

需要在web.config文件中(没有需要创建),然后在该文件里面添加下面代码:

<rule name="HTTP to HTTPS redirect" stopProcessing="true">
<match url="(.*)" />
<conditions>
<add input="{HTTPS}" pattern="off" ignoreCase="true" />
</conditions>
<action type="Redirect" redirectType="Found" url="https://{HTTP_HOST}/{R:1}" />
</rule>



如果是独立主机(独立服务器,独立云主机,独立vps):

以 nginx 为例

1、打开 /etc/nginx/nginx.conf,加入配置:

 server {

        listen       443 ssl;

        ssl_certificate /var/tmp/www.vpshz.com_bundle.crt;

        ssl_certificate_key /var/tmp/vpshz.com_secure.key;

        ssl_prefer_server_ciphers on;

        ssl_protocols TLSv1 TLSv1.1 TLSv1.2;

        #选择特定的加密方式, 避免已知的漏洞

        ssl_ciphers 'kEECDH+ECDSA+AES128 kEECDH+ECDSA+AES256 kEECDH+AES128 kEECDH+AES256 kEDH+AES128 kEDH+AES256 DES-CBC3-SHA +SHA !aNULL !eNULL !LOW !MD5 !EXP !DSS !PSK !SRP !kECDH !CAMELLIA !RC4 !SEED';

        #让浏览器记住直接访问 https 的网址, 不再去 http 重定向。

        add_header Strict-Transport-Security 'max-age=31536000; preload';

        add_header X-Frame-Options DENY;

        ssl_session_cache   shared:SSL:10m;

        ssl_session_timeout 10m;

        keepalive_timeout 70;

        ssl_dhparam /var/tmp/dhparam2048.pem;

        #禁止服务器自动解析资源类型

        add_header X-Content-Type-Options nosniff;

        #防XSS攻擊

        add_header X-Xss-Protection 1;

        server_name  www.vpshz.com vpshz.com;

2、在之前的 80 端口进行重定向配置:

server {

    listen 80;

    server_name vpshz.com www.vpshz.com;

    return 301 https://www.vpshz.com$request_uri;

}

3. HTTP 替换

将网站所有以 http 方式获取的资源全部改为 https 方式或自动方式获取, eg:

<script src="http://xx.cdn.com/jquery.js"></script>

改为

<script src="https://xx.cdn.com/jquery.js"></script>

<script src="//xx.cdn.com/jquery.js"></script>

最新回复 (0)
全部楼主
返回