SEO优化篇-NGINX强制使用https访问(http跳转到https)

news/2024/5/17 23:49:25/文章来源:https://blog.csdn.net/weixin_39716004/article/details/103657082

hi,大家好,我是终南有客,一个热爱自由的程序员……
想要获取更多信息,请关注(终南有客)公众号,了解最新消息

新站SEO的朋友注意了,经本人测试,使用404强制跳转会导致页面无收录,因为爬虫不会跳转,比如访问https://justmyfreedom.com/地址会直接报404,而不会去管后面跳转的地址,直接显示无页面.

一.需求简介

  基于nginx搭建了一个https访问的虚拟主机,监听的域名是justmyfreedom.com,但是很多用户不清楚https和http的区别,会很容易敲成https://justmyfreedom.com,这时会报出404错误,所以我需要做基于justmyfreedom.com域名的http向https的强制跳转

二.http跳转到https配置方式

进过网上查询,总结了一下三种方式,可以根据需求进行设置.

第一种:nginx的rewrite方法

这应该是大家最容易想到的方法.

配置

在NGINX的配置文件nginx.conf中配置,监听80端口,将http请求重写到https上即可.

server {	listen	80;	server_name	justmyfreedom.com;		rewrite ^(.*)$	https://$host$1	permanent;}

搭建云服务器完成后,就可以将http://justmyfreedom.com/的请求全部重写到https://justmyfreedom.com/上了

第二种:nginx的497状态码

error code 497

497 - normal request was sent to HTTPS

解释:当此虚拟站点只允许https访问时,当用http访问时nginx会报出497错误码,利用error_page命令将497状态码的链接重定向到https://justmyfreedom.com/这个域名上

配置

注意,前两中方法都是从网上获取,未试验过,代码可能有误,本人使用第三种,具体可参考第三种配置方式进行配置.

server {	listen       443;	#ssl端口	listen       80;	#用户习惯用http访问,加上80,后面通过497状态码让它自动跳到443端口	server_name  justmyfreedom.com;	#为一个server{......}开启ssl支持	ssl                  on;	#指定PEM格式的证书文件 	ssl_certificate      cert/a.pem; 	#指定PEM格式的私钥文件	ssl_certificate_key  cert/a.key;		#让http请求重定向到https请求		error_page 497	https://$host$uri?$args;}

第三种:index.html刷新网页

  上述两种方法均会耗费服务器的资源,我们用其他公司公司是如何实现http跳转到https的跳转.测试在浏览器中输入将baidu.com,发现很巧妙的利用meta的刷新作用,将baidu.com跳转到www.baidu.com.因此我们可以基于http://justmyfreedom.com的虚拟主机路径下也写一个index.html,内容就是http向https的跳转

index.html

<html>
<meta http-equiv="refresh" content="0;url=https://justmyfreedom.com/">
</html>

nginx虚拟主机配置

具体nginx.conf文件配置,可参考:


#user  nobody;
worker_processes  1;#error_log  logs/error.log;
#error_log  logs/error.log  notice;
#error_log  logs/error.log  info;#pid        logs/nginx.pid;events {worker_connections  1024;
}http {include       mime.types;default_type  application/octet-stream;#log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '#                  '$status $body_bytes_sent "$http_referer" '#                  '"$http_user_agent" "$http_x_forwarded_for"';#access_log  logs/access.log  main;sendfile        on;#tcp_nopush     on;keepalive_timeout  65;server {listen       80;server_name justmyfreedom.com;# 开启gzipgzip on;# 低于1KB的资源不压缩gzip_min_length 1024;# 压缩级别 1-9 建议4左右,越高越消耗CPUgzip_comp_level 3;# 压缩那些资源,多个空格隔开,不建议压缩图片gzip_types text/plain application/javascript application/x-java scripttext/java scripttext/xml text/css;# 配置禁用gzip条件,支持正则,此表示IE6及下不启用,低版本不支持gzip_disable "MSIE [1-6]\.";# 是否添加“Vary: Accept-Encoding”响应头gzip_vary on;#charset koi8-r;#access_log  logs/host.access.log  main;charset utf-8;location / {root   home/web/myweb/WLBlogDjango;index  index.html index.htm;}# 不要忘记配置跳转error_page  404 https://justmyfreedom.com/;# redirect server error pages to the static page /50x.html#error_page   500 502 503 504  /50x.html;location = /50x.html {root   html;}}# HTTPS server#server {listen       443 ssl;server_name  justmyfreedom.com;# 开启gzipgzip on;# 低于1KB的资源不压缩gzip_min_length 1024;# 压缩级别 1-9 建议4左右,越高越消耗CPUgzip_comp_level 3;# 压缩那些资源,多个空格隔开,不建议压缩图片gzip_types text/plain application/javascript application/x-java scripttext/java scripttext/xml text/css;# 配置禁用gzip条件,支持正则,此表示IE6及下不启用,低版本不支持gzip_disable "MSIE [1-6]\.";# 是否添加“Vary: Accept-Encoding”响应头gzip_vary on;ssl on;    ssl_certificate      cert/a.pem;ssl_certificate_key  cert/a.key;#ssl_session_cache    shared:SSL:1m;ssl_session_timeout  5m;# ssl_ciphers ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP;ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4:!DH:!DHE;ssl_protocols TLSv1 TLSv1.1 TLSv1.2;ssl_prefer_server_ciphers  on;location / {#root   html;#index  index.html index.htm;include uwsgi_params;uwsgi_pass 127.0.0.1:8899;uwsgi_param UWSGI_SCRIPT WLBlogDjango.wsgi;uwsgi_param UWSGI_CHDIR /home/web/myweb/WLBlogDjango; #项目路径}location /static/ {alias /home/web/myweb/WLBlogDjango/static/; #静态资源路径}}}

注:

  上述三种方法均可以实现基于nginx强制将http请求跳转到https请求,大家可以评价一下优劣或者根据实际需求进行选择。参考时一定要结合自己的实际情况,我很多配置基于项目安全考虑做了删减.

想要了解更多信息,请关注(终南有客)公众号
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_866388.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

如何查看一个网站的robots文件?

1.首先打开网站的首页&#xff0c;比如&#xff1a;https://www.jd.com/ 2.在域名后&#xff0c;输入robots.txt https://www.jd.com/robots.txt

如何查看一个网站的HTML地图和XML地图?

方法1&#xff1a;直接在首页域名后&#xff0c;输入sitemap,可以查看HTML地图&#xff0c;举例&#xff1a;首页地址http://www.hnfxfl.com/&#xff0c;输入http://www.hnfxfl.com/sitemap 即可。 首页域名后&#xff0c;输入sitemap.xml&#xff0c;可以查看XML地图&#x…

超好用的在线PDF转Word网站,真后悔没早发现

把PDF转成Word还是经常干的事情。 然而&#xff0c;下载一大堆软件来干这件简单的事情还是显得过于繁琐和复杂。 何况很多网上的软件安装常常出问题&#xff0c;在度娘里面搜索&#xff0c;然后下载又会经常遇到钓鱼网站&#xff0c;电脑“中毒”是常事。 有没有简单的方法&…

【公告】PDF365网站重磅上线客户端啦,快来下载体验吧

为了给小伙伴们带来最好的体验&#xff0c;经过程序员GG们的无数个日夜奋战&#xff0c;PDF365网站终于推出了“PDF365”客户端。 相信细心的小伙伴们已经发现&#xff0c;PDF365网站右上角的客户端下载已经由原来的福昕PDF转Word转换器下载&#xff0c;更新成为PDF365客户端下…

如何将PDF转换成PPT,用这个网站就可以了

日常办公中经常遇到需要将PDF转换成PPT的需求&#xff0c;今天就教大家如何快速将PDF转换成PPT&#xff0c;只要3步哦&#xff0c;别磨蹭赶紧学起来&#xff0c;超级简单&#xff0c;仅需一个PDF在线转换网站即可搞定&#xff0c;一起来看看吧。 1、首先打开PDF在线转换平台-- …

在线网站、PC端、移动端,PDF转换器最全合集了解一下?

天天跟各种文档打交道的上班族们&#xff0c;对PDF转换这个操作一定是深恶痛绝&#xff1b;什么PDF转Word、PDF转PPT、PDF转Excel&#xff1b;还有Word转PDF、PPT转PDF.......眼花缭乱&#xff0c;看着就头痛。 有的小伙伴会吐槽自己也就偶尔进行一下PDF转换的操作&#xff0c;…

在Scrapy项目【内外】使用scrapy shell命令抓取 某网站首页的初步情况

Windows 10家庭中文版&#xff0c;Python 3.6.3&#xff0c;Scrapy 1.5.0&#xff0c; 时隔一月&#xff0c;再次玩Scrapy项目&#xff0c;希望这次可以玩的更进一步。 本文展示使用在 Scrapy项目内、项目外scrapy shell命令抓取知乎首页的初步情况&#xff0c;重要的一点是&am…

ASP.NET 网站路径

ASP.NET ASP.NET 网站路径 使用网站中的资源时&#xff0c;通常必须指定资源的路径。例如&#xff0c;您可以使用 URL 路径引用页面中的图像文件或网站中其他位置处的页面的 URL。同样&#xff0c;Web 应用程序中的代码可以使用基于服务器的文件的物理文件路径对文件进行读写操…

Python+bs4+xlspdf+mail,获取网站数据转化成要素格式的pdf并发送邮件。

Pythonbs4xlspdfmail&#xff0c;获取网站数据转化成要素格式的pdf并发送邮件。

Web2.0网站性能调优实践

当前web2.0革命风起云涌&#xff0c;web2.0强调服务&#xff0c;而服务最基本的要求是速度快和稳定&#xff0c;离开这两个谈功能强大和易用性都没有任何意义。本文介绍一些关于笔者运营一个web2.0网站的优化心得和经验&#xff0c;希望能够和大家共同探讨。 Web2.0网站不…

Java专业人士必备的书籍和网站列表

Roy Miller (royroywmiller.com), 创始人兼总裁, The Other Road, LLC 对于 Java™ 语言开发人员来说&#xff0c;信息过量是一个真正的问题。每个新入行的程序员都要面临一个令人畏缩的挑战&#xff1a;要进入的行业是一个具有海量知识的行业。要了解的东西简直太多了。对于有…

大型网站技术架构

架构演变第一步&#xff1a;物理分离webserver和数据库 最开始&#xff0c;由于某些想法&#xff0c;于是在互联网上搭建了一个网站&#xff0c;这个时候甚至有可能主机都是租借的&#xff0c;但由于这篇文章我们只关注架构的演变历程&#xff0c;因此就假设这个时候已经是托管…

用Varnish和Memcached缓存给WordPress网站提速-内存级加速

Varnish是一款高性能的缓存加速器&#xff0c;Varnish把数据存放在服务器的内存中&#xff0c;利用内存可以极大的提高PHP页面执行速度&#xff0c;可以设置0&#xff5e;60秒的精确缓存时间&#xff0c;32位的机器支持的缓存文件最大为2 GB。 Varnish采用VCL的配置&#xff0…

正则表达式的符号概念、捕获组与非捕获组、解读方式、练习网站

正则表达式 正则表达式的解读方法符号概念练习的网站看两个现象进行后续思考Group的用途 捕获组和非捕获组捕获组非捕获组组的命名 正则表达式的解读方法 读者最好能养成按照字符来理解正则表达式的习惯。&#xff08;参考自动物书《精通正则表达式》&#xff0c;这种读法对我…

基于VUE使用Hbuilder工具开发的甜品网站

上文已经提到了VUE实现的思维导图&#xff0c;感兴趣的同学可以自己去了解一下VUE&#xff0c;学过JS都会很快上手。本文是开发的甜品网站&#xff0c;适配所有手机的H5网页&#xff0c;你说它是APP、小程序好像都没错。 实现代码界面如下&#xff1a; 实现的主要代码如下&…

IE浏览器高通网站打不开dump分析选择目录总结

首先需要安装jdk与jre最新版本 安装之后配置好路径&#xff0c;重启电脑 如果浏览器提示&#xff1a;Unable to load Java Applet. Please make sure JRE is updated. 就如下图进行操作&#xff1a; 在浏览器设置->安全->去掉ActiveX筛选的前面的√ 当死机之后&#x…

Designing Websites for Performance 如何设计高性能网站 Lynda课程中文字幕

Designing Websites for Performance 中文字幕 如何设计高性能网站 中文字幕Designing Websites for Performance 设计性能网站探索快速模式&#xff0c;提示和技巧的网页设计师 在本文中&#xff0c;Brian Wood向您展示了如何优化和最小化Web图形的大小&#xff0c;实现流畅…

有一个属于自己的网站是不是很酷呢,超详细的建站流程,我都给你总结好了

上篇文章Relax讲到希望在AR这个方向上做一些事情&#xff0c;落实到具体上肯定是要做一些东西出来&#xff0c;从软件层面来说&#xff0c;传统互联网兴起是以成千上万的网站呈现的&#xff0c;移动互联网是以成千上万的APP呈现的&#xff0c;当然其实还有别的方式&#xff0c;…

接口调试网站和工具

调试网站&#xff1a;https://getman.cn/gsgaO 超级好用的一款在线接口调试网站&#xff0c;可以先分析带什么样的请求头部&#xff0c;什么样的数据体可以请求成功&#xff0c;然后调整请求代码格式。 调试工具&#xff1a;fidder 很多app不是我们开发的&#xff0c;但我们…

网站访问速度提升200%以上,阿里云虚拟主机支持PHP最新版本

日前&#xff0c;阿里云虚拟主机推出了新功能&#xff0c;支持PHP的最新版本 7.0和7.1&#xff0c;并支持用户在多个不同PHP版本之间切换。 PHP 作为最好的Web编程语言&#xff0c;最新版本已经更新到了7.0和7.1。阿里云作为国内虚拟主机的领头羊&#xff0c;为了给用户提供更先…