今天这个标题真的是难倒我了。下面解释下要说的内容吧!文章源自亦枫博客-https://yflad.cn/749.html
使用腾讯云的CDN,配置好SSL后,开启强制HTTPS,默认是返回302的。但是不开启强制HTTPS,源站配置的HTTPS跳转貌似是无效的(首页)文章源自亦枫博客-https://yflad.cn/749.html
比如:文章源自亦枫博客-https://yflad.cn/749.html
访问的是http://www,yflad.cn,在不开启强制HTTPS时,返回的是301,但是跳转的还是http://yflad.cn文章源自亦枫博客-https://yflad.cn/749.html
PS:只是首页这样,再次点击时就变成HTTPS了文章源自亦枫博客-https://yflad.cn/749.html
询问了工程师关于腾讯云的CDN默认跳转后,说是 301重定向到https上文章源自亦枫博客-https://yflad.cn/749.html
文章源自亦枫博客-https://yflad.cn/749.html
文章源自亦枫博客-https://yflad.cn/749.html
说下为什么非得要301?文章源自亦枫博客-https://yflad.cn/749.html
302(临时重定向,request_uri):搜索引擎会抓取新的内容而保留旧的网址。因为服务器返回302代码,搜索引擎认为新的网址只是暂时的。文章源自亦枫博客-https://yflad.cn/749.html
301(永久重定向,permanent):搜索引擎在抓取新内容的同时也将旧的网址替换为重定向之后的网址。301也是百度等搜索引擎所倾爱的,这让我想到之前的HTTPS认证是不是也是这个原因(只能等审核下来再看看吧)。文章源自亦枫博客-https://yflad.cn/749.html
文章源自亦枫博客-https://yflad.cn/749.html
贴上permanent是为了说下nginx 的配置文章源自亦枫博客-https://yflad.cn/749.html
- server
- {
- listen 80 default_server;
- listen 443 ssl;
- server_name yflad.cn;
- index index.php index.html index.htm default.php default.htm default.html;
- root /www/wwwroot/wpblog;
- #error_page 404/404.html;
- ssl_certificate /etc/xx/xxx/xxxx/xxxx.pem;
- ssl_certificate_key /etc/xx/xxx/xxxx/xxxx.pem;
- if ($server_port !~ 443){
- rewrite ^(.*)$ https://$host$1 permanent;
- }
- error_page 497 https://$host$request_uri;
文章源自亦枫博客-https://yflad.cn/749.html
文章源自亦枫博客-https://yflad.cn/749.html
下面说下自己的解决方法吧!文章源自亦枫博客-https://yflad.cn/749.html
方法一:在关闭 强制HTTPS 的情况下,在header头部加入以下代码文章源自亦枫博客-https://yflad.cn/749.html
- <script type="text/javascript">
- if (document.location.protocol != "https:") {
- locationlocation.href = location.href.replace(/^http:/,"https:");
- }
- </script>
PS:意思是说,当检测到打开的是http页面的话,则自动跳转到对应的https页面文章源自亦枫博客-https://yflad.cn/749.html
文章源自亦枫博客-https://yflad.cn/749.html
17-06-12文章源自亦枫博客-https://yflad.cn/749.html
方法二:在nginx站点配置文件,看到下面这样的代码
- rewrite ^/.*$ https://$host$request_uri;
- ##或者
- rewrite ^/.*$ https://$host$uri;
替换成
- rewrite ^/.*$ https://$host$request_uri permanent;
重定向还有很多方法,就不一一列举了!毕竟自己墨水有限,谈不上更好的方法!本文只是记录下小站的HTTPS认证。如果有好的建议或者方法,请下方留言或者私信我,不胜感激
6月12日
百度搜索了下“亦枫”,终于看见HTTPS认证通过了
1F
如果你申请了ssl,请部署到CDN