http实现自动跳转https的设置方法

Apache 版本

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

RewriteEngine on

RewriteCond %{SERVER_PORT} !^443$

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

复制代码

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

RewriteEngine on

RewriteBase /yourfolder

RewriteCond %{SERVER_PORT} !^443$

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

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

复制代码

如果只需要对某个网页进行https跳转,可以使用redirect 301来做跳转!redirect 301  /你的网页 https://你的主机+网页

Nginx版本

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

server {

listen       80;

server_name  localhost;

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

}

复制代码

IIS 版本

IIs中实现Http自动转换到Https方法介绍 (403跳转对SEO有一定影响)

1、根据IIS版本备份以下文件:

IIS6.0 路径:C:\WINDOWS\Help\iisHelp\common\403-4.htm

IIS7.0以上 路径:C:\inetpub\custerr\zh-CN\403.htm

2、把以下内容全部拷贝替换(403-4或403)里面所有内容,保存即可

<HTML><HEAD><TITLE>该页必须通过安全通道查看</TITLE>

<META HTTP-EQUIV="Content-Type" Content="text/html; charset=GB2312">

</HEAD><BODY>

<script type="text/javascript">

var url = window.location.href;

if (url.indexOf("https") < 0) {

url = url.replace("http:", "https:");

window.location.replace(url);

}

</script>

</BODY></HTML>

复制代码

注释:IIS6中,站点属性-》目录安全性-》编辑中把“要求安全通道(SSL)”勾选上即可。

IIS7、8中,SSL设置-》把“要求SSL”勾选即可。

TOMCAT 版本

1、在conf目录下的server.xml文件中找到以下配置,修改redirectPort参数值为"443",默认是“8443”.

<Connector port="80" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="443" />

复制代码

2、在conf目录下的web.xml文件内容<web-app>……</web-app>中增加以下配置。

<web-app>

.........

<security-constraint>

<web-resource-collection >

<web-resource-name >SSL</web-resource-name>

<url-pattern>/*</url-pattern>

</web-resource-collection>

<user-data-constraint>

<transport-guarantee>CONFIDENTIAL</transport-guarantee>

</user-data-constraint>

</security-constraint>

</web-app>

复制代码

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

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

<script type="text/javascript">

var url = window.location.href;

if (url.indexOf("https") < 0) {

url = url.replace("http:", "https:");

window.location.replace(url);

}

</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的方法较多,以上仅供参考。

原文地址:https://www.cnblogs.com/trip-j/p/12142828.html

时间: 2024-08-27 09:48:20

http实现自动跳转https的设置方法的相关文章

nginx证书制作以及配置https并设置访问http自动跳转https(反向代理转发jboss)

nginx证书制作以及配置https并设置访问http自动跳转https 默认情况下ssl模块并未被安装,如果要使用该模块则需要在编译时指定–with-http_ssl_module参数,安装模块依赖于OpenSSL库和一些引用文件,通常这些文件并不在同一个软件包中.通常这个文件名类似libssl-dev. 生成证书 可以通过以下步骤生成一个简单的证书: 首先,进入你想创建证书和私钥的目录,例如: $ cd /usr/local/nginx/conf 创建服务器私钥,命令会让你输入一个口令: $

nginx 的多域名多https转发设置方法【转】

version: 1.1(fixed) 修正一些错误基本环境:/etc/nginx/nginx.conf #保持/etc/nginx/ssl/    #ssl认证文件/etc/nginx/site-available  #VirtualHost设置区/etc/nginx/site-enable  #VirtualHost应用区 基本设计:让nginx支持多域名(包括二级域名),并自动跳转到https(所有域名默认访问https),反向代理转发到后台不同端口. 设置文件:/etc/nginx/si

tomcat设置http自动跳转为https访问

一.生成服务器端证书文件 可以使用Windows系统或者Linux系统 (1)Windows环境 条件:已经安装JDK 步骤: 1.在运行里输入cmd进入命令窗口 2.进入JDK安装目录  如D:/Program Files/Java/jdk1.6.0/bin 3.执行命令   keytool -genkey -alias tomcat -keyalg RSA -keystore E:\tomcat.keystore -validity 36500 参数简要说明:“E:\tomcat.keyst

Charles 抓包发现自动跳转为https 问题梳理

今天遇到个有点意思的问题.特此记录. 业务场景: 做了一个页面,但是对外是挂载在京东主站上.如:www.jd.com/yifu/123456.html. 现场情况: 在本地/测试环境/预发环境中,每次点击页面之前,都要删除浏览器缓存,否则是死链. 背景知识: Chrome浏览器会自动记录http->https的跳转.比如访问http://www.jd.com 自动跳转成了 https//www.jd.com ,那么下次浏览器就会直接使用https.这里的自动跳转是基于域名的,也就是同一域名下有某

LR测试https协议设置方法

测试ssl隧道的设置方法: 前一段时间使用loadrunner测试ssl vpn时,使用ssl隧道一直配置不成功,经过查资料,终于成功,记录一下,方便大家测试.走ssl隧道与普通http,只需多设两个地方, 1.tools->recording options->port mapping 选择 第二项 winINet level data 2.runtime setting -> Internet protocol->perference 选中 WinInet replay ins

DEDECMS删除 提取第一个图片为缩略图 自动勾选默认选择设置方法

设置方法步骤: 第一步:登录FTP,依次找到 / dede / templets / article_add.htm 第二步:右击 article_add.htm 打开“编辑”.搜索并找到“删除非站内链接 1 <input name="autolitpic" type="checkbox" class="np" id="autolitpic" value="1"<?php if($cfg_arc

Nginx自动跳转https

Nginx自动从http跳转到https #vim nginx.conf server { listen 80; server_name www.test.com; charset utf-8; return     301 https://$server_name$request_uri;  #添加这行,即可以实现从http跳转到https access_log  logs/wwwuat.yaok.com.log  main; location / { rewrite ^/(.*)$ //$1

如何禁止chrome自动跳转https

http://www.tuicool.com/articles/Znmi6rf chrome://net-internals/#hsts 第一个输入框,输入要访问的地址:scv.cbbs.xx.com ,点击[Delete] 第二个输入框,再输入scv.cbbs.xx.com ,点击[Qquery]显示Not found 说明正确了 在浏览器访问 http://scv.cbbs.xx.com

LR录制https协议设置方法

1.New一个脚本,option --> port mapping --> 选择第二个  WinNet level data 2.Run-time Setting --> Preferences中,选择Winlnet replay instead of Sockets(Windows only) 然后进行录制就可以了 参考:http://blog.csdn.net/hxp317028929/article/details/46557937