文档章节

关于Nginx location中配置proxy_pass转发时斜线'/'导致的404问题

空山苦水禅人
 空山苦水禅人
发布于 2016/12/12 23:51
字数 246
阅读 525
收藏 0

在Nginx location通用匹配规则中配置proxy_pass转发时,假设有如下location配置:

	location /test {
		proxy_pass http://localhost:8080/test;
		proxy_redirect off;
		proxy_set_header X-Real-IP          $remote_addr;
		proxy_set_header X-Forwarded-For    $proxy_add_x_forwarded_for;
		proxy_set_header Host $host:$server_port;
		proxy_set_header X-Forwarded-Proto "https";
		proxy_set_header X-Forwarded-Host $host;
		proxy_set_header X-Forwarded-Server $host;
		proxy_set_header X-Real-IP $remote_addr;
	}

如果我请求 http://localhost/test/a.jsp,则会将url根据匹配规则“/test”截取,然后将“/test”后面的内容(此处为“/a.jsp”)拼接到proxy_pass的后面,然后转发,也就是最后实际请求地址为:proxy_pass http://localhost:8080/test/a.jsp。

所以,如果location的匹配规则最后不加斜线'/',则proxy_pass的最后也不要加斜线,或者都加上斜线,不然就不能正确访问实际地址,导致404 not found错误。

 

注:正则匹配不适用,关于location的匹配规则,可以参考其他资料。

© 著作权归作者所有

共有 人打赏支持
空山苦水禅人
粉丝 17
博文 18
码字总数 11897
作品 0
成都
后端工程师
nginx的反向代理模块 参数proxy_pass,proxy_method,proxy_hide_

nginx的反向代理模块有很多种配置,下面介绍一些常用的配置实例: 1.proxy_pass 语法:proxy_pass URL 配置块:location,if 详解:此配置项将当前请求反向代理到URL参数指定的服务器上,URL...

adbug
2016/02/24
861
0
nginx相同端口代理不同应用

nginx相同端口不同路径代理不同应用示例 代码1 location和proxy_pass末尾均有“/”. 对nginx路径"/mes"的访问代理到http://192.168.1.4:8080/。 以下配置可能带来404错误 代码2 proxy_pass末...

IdleMan
2016/11/14
58
0
Nginx 配置简述

原文出处:小胡子哥(@Barret李靖) 不论是本地开发,还是远程到 Server 开发,还是给提供 demo 给人看效果,我们时常需要对 Nginx 做配置,Nginx 的配置项相当多,如果考虑性能配置起来会比...

小胡子哥(@Barret李靖)
2016/11/23
0
0
apache转换到了nginx的几个注意点

【from】www.mlives.cn 最近把整站从apache升级到了nginx,客户的站点大概有30台服务器大部分架构位tomcat+apache,只有一个php页面 一下是我升级遇到的几个问题的注意点 1. 当我们去访问服务...

范堡
2009/05/06
1K
0
Nginx实现404页面的几种方法【转】

一个网站项目,肯定是避免不了404页面的,通常使用Nginx作为Web服务器时,有以下集中配置方式,一起来看看。 第一种:Nginx自己的错误页面 Nginx访问一个静态的html 页面,当这个页面没有的时...

bz_z
06/07
0
0

没有更多内容

加载失败,请刷新页面

加载更多

申请Let's Encrypt永久免费SSL证书

环境安装 1、安装git yum install git-core 2、安装python 系统自带 不用安装 只要版本大于2.7即可。 获取Let's Encrypt免费SSL证书 先停止nginx 在阿里云安全组里加入 443端口的入规则 git ...

HGMrWang
32分钟前
1
0
如何使用playframework进行更好的开发

1: 自定义基类Controller 相信刚开始使用Play的人写的Controller 都继承于 play.mvc.Controller , 但这并不是一个很好的选择,自建基类Controller可以扩展更多的功能。 1.1 验证功能。 后台...

tuerqidi
36分钟前
4
0
解决ubuntu下root用户 不能ftp登陆的问题

解决ubuntu下root用户 不能ftp登陆的问题 一般情况下,由于种种原因ftp是不让root用户远程登陆,但只要你修改以个文件就可以登陆了. 注释掉 /etc/ftpusers 中的root即可 (最后重启vsftpd serv...

15834278076
48分钟前
0
0
《JavaScript高级程序设计(第3版)》阅读笔记

第6章 面向对象的程序设计 6.2 创建对象 6.2.1 工厂模式 JavaScript创建对象(一)—— 工厂模式 6.2.2 构造函数模式 JavaScript创建对象(二)——构造函数模式 6.2.3 原型模式 JavaScript...

Bob2100
53分钟前
1
0
Windows小技巧 – Win+R提高Windows使用效率

追求效率的朋友都需要一款顺手的快速启动工具,Win 平台上有键盘流的RunZ、Listary、ALTRun、Launchy、Wox 和图标流的 Fences、Rolan、 WinLaunch 等,而 Mac 上也有 Alfred、Spotlight。 而...

QQZZFT
55分钟前
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部