Nginx反向代理的目录访问问题
从昨天就开始纠结了,在做实验的时候,遇到目录访问的问题,如下
前端nginx vhost的设置如下,代理访问后端的192.168.0.37
server
{
listen 80;
server_name www.proxy.com;
index index.php index.html index.htm; location /test/ {
proxy_next_upstream http_502 http_504 error timeout invalid_header;
proxy_pass http://192.168.0.37;
proxy_set_header Host 192.168.0.37;
proxy_set_header X-Forwarded-For $remote_addr;
proxy_redirect http://192.168.0.37/test/ /test/;
} access_log /data/logs/weblog/proxy_server.access.log;
}
后端的192.168.0.37在根目录下是有test目录的,该目录下有个index文件,内容为“192.168.0.37 proxy test OK!”
现在的问题是如果在访问www.proxy.com/test/的时候是可以访问的,如下
- [root@control_node ~]# curl -I http://www.proxy.com/test/
- HTTP/1.1 200 OK
- Server: nginx
- Date: Wed, 24 Apr 2013 04:22:40 GMT
- Content-Type: text/html; charset=utf-8
- Content-Length: 28
- Connection: keep-alive
- Last-Modified: Wed, 24 Apr 2013 03:09:13 GMT
- Accept-Ranges: bytes
但是如果访问www.proxy.com/test的话就会301
- [root@control_node ~]# curl -I http://www.proxy.com/test
- HTTP/1.1 301 Moved Permanently
- Server: nginx
- Date: Wed, 24 Apr 2013 04:25:01 GMT
- Content-Type: text/html
- Content-Length: 178
- Location: http://www.proxy.com/test/
- Connection: keep-alive
我刚开始以为是我前端的proxy_redirect设置有问题,后来修改proxy_redirect多次,均无法达到要求,最后突发奇想,把前端的nginx设成了这样
- server
- {
- listen 80;
- server_name www.proxy.com;
- index index.php index.html index.htm;
- location /test {
- proxy_next_upstream http_502 http_504 error timeout invalid_header;
- proxy_pass http://192.168.0.37/test/;
- proxy_set_header Host 192.168.0.37;
- proxy_set_header X-Forwarded-For $remote_addr;
- #proxy_redirect http://192.168.0.37/test/ /test/;
- }
- location / {
- proxy_next_upstream http_502 http_504 error timeout invalid_header;
- proxy_pass http://192.168.0.37/;
- proxy_set_header Host 192.168.0.37;
- proxy_set_header X-Forwarded-For $remote_addr;
- }
- access_log /data/logs/weblog/proxy_server.access.log;
- }
这样的话,访问www.proxy.com/test就没问题了
- [root@control_node vhosts]# curl www.proxy.com/test
- 192.168.0.37 proxy test OK!
Nginx反向代理的目录访问问题的更多相关文章
- [亲测]ASP.NET Core 2.0怎么发布/部署到Ubuntu Linux服务器并配置Nginx反向代理实现域名访问
前言 ASP.NET Core 2.0 怎么发布到Ubuntu服务器?又如何在服务器上配置使用ASP.NET Core网站绑定到指定的域名,让外网用户可以访问呢? 步骤 第1步:准备工作 一台Liun ...
- [亲测]七步学会ASP.NET Core 2.0怎么发布/部署到Ubuntu Linux服务器并配置Nginx反向代理实现域名访问
前言 ASP.NET Core 2.0 怎么发布到Ubuntu服务器?又如何在服务器上配置使用ASP.NET Core网站绑定到指定的域名,让外网用户可以访问呢? 步骤 第1步:准备工作 一台Liun ...
- Nginx反向代理实现IP访问分流
通过Nginx做反向代理来实现分流,以减轻服务器的负载和压力是比较常见的一种服务器部署架构.本文将分享一个如何根据来路IP来进行分流的方法. 根据特定IP来实现分流 将IP地址的最后一段最后一位为0或 ...
- nginx反向代理带路径访问问题
nginx的配置为192.168.0.219:80分别映射到upstream组192.168.0.55:8080和192.168.0.206:8080,那如何配置做到访问192.168.0.219:8 ...
- nginx反向代理时配置访问密码
在有些情况下,我们需要对服务器上的某些资源进行限流或者禁止陌生人访问,我们可以通过nginx配置来对url添加访问密码. 效果如下 nginx 开启访问验证在 nginx 下,提供了 ngx_http ...
- nginx 反向代理到目录
upstream yg{ server 127.0.0.x; } server { listen 80; server_name www.hikaru.pw; location / { rewrite ...
- nginx 反向代理学习
目录 nginx 反向代理学习 一.正向代理和反向代理的区别 1.1正向代理 1.2 反向代理 二.nginx反向代理的使用 nginx 反向代理学习 一.正向代理和反向代理的区别 正向代理代理客户端 ...
- 实战 | 一文带你读懂Nginx反向代理
一个执着于技术的公众号 前言 在前面的章节中,我们已经学习了nginx基础知识: 给小白的 Nginx 10分钟入门指南 Nginx编译安装及常用命令 完全卸载nginx的详细步骤 Nginx 配置文 ...
- nginx反向代理tomcat访问时浏览器加载失败,出现 ERR_CONTENT_LENGTH_MISMATCH 问题
问题说明:测试机上部署了一套业务环境,nginx反向代理tomcat,在访问时长时间处于加载中,十分缓慢! 通过浏览器调试(F12键->Console),发现有错误ERR_CONTENT_LEN ...
随机推荐
- searchBar控件
那就先了解一下UISearchBar控件吧! UISearchBar控件就是要为你完成搜索功能的一个专用控件.它集成了很多你意想不到的功能和特点! 首先,还是来普及一下UISearchBar控件API ...
- Task.Run Vs Task.Factory.StartNew
在.Net 4中,Task.Factory.StartNew是启动一个新Task的首选方法.它有很多重载方法,使它在具体使用当中可以非常灵活,通过设置可选参数,可以传递任意状态,取消任务继续执行,甚至 ...
- 关于opacity透明度子元素继承现象的若干研究以及hack方法
[感想]信息时代的信息是有时效性的,今天是确确实实感受到了.互联网资料虽然丰富,但是质量不一,还有大量的跟风雷同,很多人都是随手拷贝过来,根本没有实践.以前端为例,这两年浏览器的迅猛发展,造成很多原有 ...
- python 中颜色的表示
字背景颜色范围:40----49 40:黑 41:深红 42:绿 43:黄色 44:蓝色 45:紫色 46:深绿 47:白色 字颜色:30-----------39 30:黑 31:红 32:绿 33 ...
- ansible-2添加公钥
该文章摘自:http://www.fwqtg.net/%E8%87%AA%E5%8A%A8%E5%8C%96%E8%BF%90%E7%BB%B4%E5%B7%A5%E5%85%B7ansible%E5 ...
- 在Web Service中傳送Dictionary
有個需求,想在Web Service中傳遞Dictionary<string, string>參數,例如: 排版顯示純文字 [WebMethod] public Dictionary< ...
- C#中相对路径转换为绝对路径的方法
第一种方法:使用System.Web类,System.Web.HttpContext.Current.Server.MapPath('相对路径');它还可以写成下面这种先声明空间,然后再使用函数的方式 ...
- [IOS UIScrollView+PageControl]信息展示横幅
ScrollViewController.h #import <UIKit/UIKit.h> @interface ScrollViewController : UIViewControl ...
- API与软件架构
http://blog.csdn.net/horkychen/article/details/46612899 从架构设计的角度来看(所谓的组成论),软件系统就是模块和接口. 模块(层次/组件)决定分 ...
- Spring学习1-初识Spring
一.简介 1.Spring是一个开源的控制反转(Inversion of Control ,IoC)和面向切面(AOP)的容器框架.它的主要目得是简化企业开发. 2.为何要使用Spring? ...