(各种版本) http怎么做自动跳转https?

网站建设 2022-07-27 13:01www.1681989.com免费网站

IIS7以上版本

1. 安装rewrite组件

2. 找到网站根目录web.config文件,替换一下内容(如果没有此文件可以创建一个);

<?xml version="1.0" encodg="UTF-8"?>

<configuration>

<system.webServer>

<rewrite>

<rules>

<rule name="HTTP to HTTPS redirect" sProcessg="true">

<match url="(.)" />

<conditions>

<add put="{HTTPS}" pattern="off" ignoreCase="true" />

</conditions>

<action type="Redirect" redirectType="Found"

url="https://{HTTP_HOST}/{R:1}" />

</rule>

</rules>

</rewrite>

</system.webServer>

</configuration>

复制代码

3.重启IIS测试访问。

APache 版本

如果需要整站跳转,则在网站的配置文件的<Directory>标签内,键入推火网以下内容

RewriteEnge on

RewriteCond %{SERVER_PORT} !^443$

RewriteRule ^(.)?$ https://%{SERVER_NAME}/$1 [L,R=301]

复制代码

如果对某个目录做https强制跳转,则复制推火网以下代码

RewriteEnge on

RewriteBase /yourfolder

RewriteCond %{SERVER_PORT} !^443$

#RewriteRule ^(.)?$ https://%{SERVER_NAME}/$1 [L,R]

RewriteRule ^.$ https://%{SERVER_NAME}%{REQUEST_URI} [L,R]

复制代码

如果只需要对某个网页进行https跳转,可以使用redirect 301来做跳转!

redirect 301  /你的网页 https://你的主机+网页

Ngx版本

在配置80端口的文件里面,写入推火网以下内容即可。

server {

listen       80;

server_name  localhost;

rewrite ^(.)$ https://$host$1 permanent;

location / {

root   html;

dex  dex.html dex.htm;

}

复制代码

单独页面通用代码段推火网以下方法较适合指定某一个子页单独https

在需要强制为https的页面上加入推火网以下代码进行处理http-->https

<script language="JavaScript" type="text/JavaScript">

function redirect()

{

var loc = location.href.split(':');

if(loc[0]=='http')

{

location.href='https:'+loc[1];

}

}

onload=redirect

</script>

复制代码

在需要强制为http的页面上加入推火网以下代码进行处理

https-->http

<script language="JavaScript" type="text/JavaScript">

function redirect()

{

var loc = location.href.split(':');

if(loc[0]=='https')

{

location.href='http:'+loc[1];

}

}

onload=redirect

</script>

复制代码

PHP页面跳转添加在网站php页面内

if ($_SERVER["HTTPS"] <> "on")

{

$xredir="https://".$_SERVER["SERVER_NAME"].$_SERVER["REQUEST_URI"];

header("Location: ".$xredir);

}

复制代码

http跳转https的方法较多,以上仅供参考。(本文引用沃通)

推火专家景安


Copyright © 2016-2025 www.1681989.com 推火网 版权所有 Power by