【nginx】开启cdn,nginx一直301重定向解决办法

踩 坑 不 易 , 还 希 望 各 位 大 佬 支 持 一 下 \textcolor{gray}{踩坑不易,还希望各位大佬支持一下}

📃 个 人 主 页 : \textcolor{green}{个人主页:} 沉默小管

📃 个 人 网 站 : \textcolor{green}{个人网站:} 沉默小管

🔥 技 术 交 流 Q Q 群 : 837051545 \textcolor{green}{技术交流QQ群:837051545} QQ837051545

👍 点 赞 , 你 的 认 可 是 我 创 作 的 动 力 ! \textcolor{green}{点赞,你的认可是我创作的动力!}

⭐️ 收 藏 , 你 的 青 睐 是 我 努 力 的 方 向 ! \textcolor{green}{收藏,你的青睐是我努力的方向!}

✏️ 评 论 , 你 的 意 见 是 我 进 步 的 财 富 ! \textcolor{green}{评论,你的意见是我进步的财富!}

如果有不懂可以留言,我看到了应该会回复
如有错误,请多多指教

问题描述

网站开启cdn(内容分发网络),输入php-china.com在浏览器中,无法重定向为www.php-china.com

问题原因

问题一:没有开启主域名的cdn,导致nginx找不到主域名的ip地址一直重定向
问题二:站源信息配置配置成http,所以跳转https会无限重定向

解决流程

1.开启cdn

设置腾讯云cdn(内容分布网络),开启主域名和www域名的cdn,源站设置自己的ip地址,回源设置自己的域名(如:xxx.php-china.com)
主域名设置:
在这里插入图片描述
www域名设置:
在这里插入图片描述

2.CNAME设置

把CNAME值解析到对应的主域名上
在这里插入图片描述

解析结果:
在这里插入图片描述

3.服务器nginx设置强制添加www
server {
  listen 80;
  autoindex on;
  server_name www.php-china.com php-china.com;#你的域名
    #访问php-china.com强制添加www
 	if ( $host ~ '^php-china.com' ) {
    rewrite 301 https://www.php-china.com$1 permanent;
    }
    #访问www.php-china.com强制添加https
  	if ( $host != 'www.php-china.com' ) {
    rewrite ^(.*)$ https://www.php-china.com$1 permanent;
    }
}

特别注意:如果开启https,像强制跳转为https,源站信息的主源站的回源协议需要设置为https,否则找不到回源地址。如果ip设置443端口以后,CDN回源时会以HTTPS协议请求源站,就不会触发源站的强制跳转逻辑

cdn详细文档:https://cloud.tencent.com/document/product/228/41334

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
nginx 301重定向死循环是指在使用nginx进行301永久重定向时,由于配置错误或者逻辑问题导致请求在重定向过程中陷入无限循环的情况。 通常情况下,nginx301重定向是通过配置server块中的location指令来实现的。当客户端发送请求时,nginx会根据配置的location规则进行匹配,并将匹配到的请求重定向到指定的URL。 如果配置的重定向规则存在问题,比如将请求重定向到了自身或者循环重定向到其他URL,就会导致死循环的情况发生。例如,以下是一个可能导致死循环的nginx配置示例: ``` server { listen 80; server_name example.com; return 301 http://example.com; } ``` 在这个示例中,无论客户端请求任何URL,nginx都会将其重定向到http://example.com。这样就会导致请求不断地被重定向,从而形成死循环。 为了避免nginx 301重定向死循环,需要确保重定向规则正确配置。可以通过以下几种方式来解决问题: 1. 检查重定向规则:仔细检查nginx配置文件中的重定向规则,确保没有将请求重定向到自身或者形成循环重定向的情况。 2. 使用301重定向的目标URL:在配置重定向规则时,确保将请求重定向到一个有效的URL,而不是一个无效的URL或者自身。 3. 使用302临时重定向:如果无法确定正确的重定向规则,可以暂时使用302临时重定向代替301永久重定向,以避免死循环的问题。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

沉默小管

你的鼓励是我最大的动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值