`

"proxy_pass" cannot have URI part in location given by regular expression

阅读更多

在windows中使用nginx时报错:

C:\TDDOWNLOAD\nginx-1.6.0\nginx-1.6.0>nginx.exe -s reload

nginx: [emerg] "proxy_pass" cannot have URI part in location given by regular expression, or inside named location, or inside "if" statement, or insid

e "limit_except" block in C:\TDDOWNLOAD\nginx-1.6.0\nginx-1.6.0/conf/nginx.conf:61

 

我的nginx配置如下:

location ~* \.(jsp|do)$
	  {

			index index.jsp;

			proxy_pass http://localhost:8080/shop_goods;
			proxy_set_header X-Real-IP $remote_addr;
		}

 为什么会报错呢?

因为location 使用了正则表达式(\.(jsp|do)$),而且proxy_pass中包含了URI part(shop_goods).错误提示的意思是:

如果location包含了正则表达式,则 "proxy_pass"不能包含URI part(shop_goods).

找到原因后,修改如下:

	location ~* \.(jsp|do)$
	  {

			index index.jsp;

			proxy_pass http://localhost:8080;
			proxy_set_header X-Real-IP $remote_addr;
		}

 注意:proxy_pass的值后面不要有斜杠,下面的是错误的:

proxy_pass http://localhost:8080/;

参考:http://huangkunlun520.blog.51cto.com/2562772/901974

nginx windows 安装包见附件

0
1
分享到:
评论

相关推荐

    nginx location中多个if里面proxy_pass的方法

    在本文中,我们将深入探讨`location`指令的匹配机制以及在多个`if`语句中使用`proxy_pass`的方法。 首先,了解`location`的匹配指令: 1. `~`:表示执行一个正则匹配,区分大小写。 2. `~*`:表示执行一个正则匹配...

    nginx中location中关于proxy_pass和rewrite的应用.rar

    在`location`块中,`proxy_pass`和`rewrite`可以一起使用,先执行`rewrite`,然后转发给`proxy_pass`。这种组合使得Nginx能够根据重写后的URL找到正确的上游服务器,并处理请求。例如: ``` location /api { ...

    nginx 反向代理之 proxy_pass的实现

    格式很简单: proxy_pass URL; 其中URL包含:传输协议(http://, https://等)、主机名(域名或者IP:PORT)、uri。 示例如下: proxy_pass http://www.xxx.com/; proxy_pass http://192.168.200.101:8080/uri; ...

    ngx_http_proxy_connect_module.zip

    proxy_pass http://$proxy_host:$proxy_port; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header ...

    Nginx之proxy_redirect使用详解

    其中,“default”模式下,Nginx会自动根据location和proxy_pass指令中的参数设置,来决定Location重定向的目标地址。而当设置为“off”时,则不进行重定向的修改。最后一种模式“redirect replacement”需要手动...

    nginx静态文件缓存的解决方案1

    ### 第三步:配置 proxy_pass 跳转的 location 中的静态文件路径 确保 Nginx 知道静态文件的存储位置,可以在相应 `location` 中使用 `root` 指令: ```nginx location ~ .*\.(html)$ { default_type 'text/html'...

    yangpeng14#DevOps#详解Nginx-proxy_pass使用1

    前言日常不管是研发还是运维,都多少会使用Nginx服务,很多情况Nginx用于反向代理,那就离不开使用proxy_pass,有些同学会对 proxy_pass

    nginx系列(十)nginx缓存代理proxy_cacahe和CDN实现的原理

    例如,可以配置一个专门用于CDN的服务器块,使用proxy_pass指令指定CDN的URL,同时结合proxy_cache使用,实现内容的缓存和分发。 4. **Nginx源码分析**:对于深入了解Nginx的工作机制,源码阅读是非常有价值的。...

    详解proxy_pass根据path路径转发时的”/”问题记录

    在nginx中配置proxy_pass时,如果是按照^~匹配路径时,要注意proxy_pass后的url最后的/。当加上了/,相当于是绝对根路径,则nginx不会把location中匹配的路径部分代理走;如果没有/,则会把匹配的路径部分也给代理走。...

    ngx_http_proxy_connect_module, 用于CONNECT请求处理的前向代理模块.zip

    ngx_http_proxy_connect_module, 用于CONNECT请求处理的前向代理模块 名称 此模块为"连接"http方法提供支持,此方法主要用于... 目录 姓名 例子 安装 指令 proxy_connect proxy_connect_allow proxy_connect_connect_t

    Nginx服务器的反向代理proxy_pass配置方法讲解

    proxy_pass http://127.0.0.1:8008; } 或者可以 location / { proxy_pass http://127.0.0.1:8008; } Apache2的反向代理的配置是: ProxyPass /ysz/ http://localhost:8080/ 然而,如果要配置一个相对复杂的...

    Nginx正向代理http和https.md

    proxy_cache_key "$scheme$request_method$host$request_uri"; proxy_ignore_headers "Cache-Control" "Expires"; proxy_read_timeout 90; proxy_send_timeout 90; } } } ``` ##### 4.2 HTTPS正向代理配置 ...

    nginx_tcp_proxy_module-master.zip

    nginx_tcp_proxy_module-master.zip

    apache代理mod_proxy、mod_proxy_http代理模块库包下载(32位windows\linux版本).txt

    该软件包是apache的httpd中mod_proxy.so、mod_proxy_http.so代理模块,分别对应包含linux、windows的版本。

Global site tag (gtag.js) - Google Analytics