解决nginx 301跳转url最后带/问题

解决nginx 301跳转url最后带/问题

前言

1、Nginx 服务中配置指令 absolute_redirect 用来配置重定向的方式。默认开启,为绝对重定向,url最后会加上/;否则为相对重定向。

2、当我们访问URI时;如果访问资源为一个目录,并且URI没有以正斜杠(/)结尾;Nginx 服务就会返回一个301跳转,目标地址就是要加一个正斜杠。

例如:

当我请求一下地址为:http://www.easysb.cn/product时,返回的请求结果为Location跳转,新的URL为http://www.easysb.cn:8080/product/,导致浏览器无法正确访问。

3、在跳转过程中 port_in_redirect指令设置跳转目录的端口,默认值为on,从 nginx 配置文件中的Listen端口获取。否则从接受到的请求头信息(header)中获取;如果是 Nginx 版本号大于 1.11.8,可以考虑用 absolute_redirect off;

解决方案

添加absolute_redirect off;只有1.11.8 才支持,低版本不需要配置

server_name_in_redirect指令是只跳转的URL的域名是用配置文件nginx.conf中的配置的

设置server_name_in_redirect 为on时:

访问https://192.168.137.3/download 会跳转到https://10.1.1.1:2443/download/

java 复制代码
server_name_in_redirect off;

port_in_redirect指令是只跳转的URL的端口是用配置文件nginx.conf中的配置的port,还是用请求中获取。默认值为on,即配置文件定义。

java 复制代码
port_in_redirect off;
相关推荐
Elastic 中国社区官方博客19 分钟前
错误最多的服务运行正常:使用 ES|QL 从日志进行根因分析
大数据·运维·数据库·sql·elasticsearch·搜索引擎·全文检索
迪康coolmu20 分钟前
屏幕水印与防拍照落地:从水印类型到泄密溯源的完整配置
运维·网络·安全·网络安全·数据安全
0+11124 分钟前
Linux --进程间关系和守护进程
linux·运维·服务器
weixin_403810131 小时前
EasyClick iOS 免越狱自动化脚本怎么写:从环境判断到跑通第一个脚本
运维·ios·自动化
程序猿老A1 小时前
GPU云服务器怎么安装AI
运维·服务器·人工智能
小白的码BUG之路1 小时前
Docker -- No space left on device
运维·docker·容器
Ruiery1 小时前
Linux 6.6内核 CPU 深度解析(八):percpu 变量 — 每个 CPU 一份数据,无锁访问
linux·运维·服务器
Wang's Blog2 小时前
Java 项目实战: 外卖平台优化-前端dist部署与Nginx反向代理rewrite
java·前端·nginx
程序猿老A2 小时前
云服务器怎么配置视频存储?
运维·服务器·音视频
程序员老陆2 小时前
Docker 命令全景指南:从镜像构建到生产运维
运维·docker·容器