当前位置:首页 > 编程技术 > PHP编程

http站点使用301方式跳转到https

网友投稿4年前 (2022-10-11)PHP编程922
摘要:http和https:http定义了客户端(浏览器)与服务器之间的通信规则,端口号是80,大部分客户端指的是我们平时上网的浏览器,当然有很多中断例如手机APP、嵌入式软件也可能采用http和服务器通信,这种协议在传输的时候是明文的,也就是在通信过程中传输的数据在线路的每个节点(例如网关,路由器)都可…

http和https:http定义了客户端(浏览器)与服务器之间的通信规则,端口号是80,大部分客户端指的是我们平时上网的浏览器,当然有很多中断例如手机APP、嵌入式软件也可能采用http和服务器通信,这种协议在传输的时候是明文的,也就是在通信过程中传输的数据在线路的每个节点(例如网关,路由器)都可以被劫持到,所以安全性较低。而https即http下加入SSL层加密,端口号是443,传输数据无法被劫持到。
对于安全性较高的站点(金融、银行、电子商务等)一般都采用https,目前越来越多的站点都使用了https,但是很多用户输入的时候都是直接输入网址,默认浏览器作为http来请求,这样就需要在服务器端做一个跳转到https站点,在服务器端跳转有301和302两种方式,这里的301和302指的是http请求状态码,对用户来讲没什么区别,但是对于搜索引擎关系重大,301是永久重定向而302则被认为是临时的,所以应该采用301的方式,做301跳转一般又有两种方式:1.使用程序跳转2.使用web服务器配置跳转。
以PHP程序为例可以在入口文件或者公共文件中使用

$scheme = isset($_SERVER['REQUEST_SCHEME']) ? $_SERVER['REQUEST_SCHEME'] : '';if(($scheme === 'http')){
    header('HTTP/1.1 301 Moved Permanently');
    header('Location:https://你的域名' . $_SERVER['REQUEST_URI']);}123456

这样就可以实现全站301跳转了,$_SERVER[‘REQUEST_URI’]表示保留原来url上的参数

另外一种方式就是使用web服务器配置进行跳转,以Nginx为例,在80端口的虚拟主机中使用

rewrite ^(.*) https://你的域名$1 permanent;1

这样就可以实现和上述程序一样的301跳转,有条件的建议使用web服务器做跳转,一个是不用解析应用程序代码,再就是通过程序跳转的方式虽然先发送了301状态码信息,但是Location方式是302,有的客户端会识别成302跳转


扫描二维码推送至手机访问。

版权声明:本文由天涯家园HomeH发布,如需转载请注明出处。

本文链接:https://www.homeh.cc/post/125.html

分享给朋友:

“http站点使用301方式跳转到https” 的相关文章

MyISAM与InnoDB两者之间区别与选择,详细总结,性能对比

1、MyISAM:默认表类型,它是基于传统的ISAM类型,ISAM是Indexed Sequential Access Method (有索引的顺序访问方法) 的缩写,它是存储记录和文件的标准方法。不是事务安全的,而且不支持外键,如果执行大量的select,insert MyISAM比较适合。2、I…

值得推荐的国内外的开源 PHP CMS 系统有哪些?

值得推荐的国内外的开源 PHP CMS 系统有哪些?

开源的网站系统很多,今天就统计整理一下现在流行的各种开源系统、cms推荐,分享给大家参考使用,如果大家有好的资源分享,也请在本文留言评论!一 国内CMS1.cms系统1)知名cmsdedecms: www.dedecms.com/优点:免费开源、简单易上手、前后台分离、前台模版标签、可安装主题插件、…

PHP 运算符-PHP学习语法2

本节展示了可用于 PHP 脚本中的各种运算符.PHP 算数运算符运算符名称例子结果显示结果+加法$x + $y$x 与 $y 求和显示结果-减法$x - $y$x 与 $y 的差数显示结果*乘法$x * $y$x 与 $y 的乘积显示结果/除法$x / $y$x 与 $y 的商数显示结果%取模$x…

[php编程]php中运行后怎么停,php停止脚本运行的操作方法

php停止脚本运行的操作方法发布时间:2020-07-21 17:32:33来源:亿速云阅读:112作者:小新本篇文章和大家了解一下php停止脚本运行的操作方法。有一定的参考价值,有需要的朋友可以参考一下,希望对大家有所帮助。php停止脚本运行的方法是:return、die、exit。如果exit用…

php异步运行的示例

php其实有一个异步运行的方法,做一个简单的证明示例如下:异步运行的示例示例:用1.php异步运行t.php,1.phpfor($ii=1;$ii<4;$ii++){     $xian=[];     for…

通过.htaccess进行http自动跳转到https301重定向的设置方法

在网站根目录下创建 .htaccess 文件,如果目录下已经有 .htaccess 文件,用代码编辑器打开,在最下面添加写入如下301重定向规则语句即可:RewriteEngine on RewriteBase / RewriteCond %{SERVER_PORT…