首頁 >後端開發 >php教程 >Nginx Rewrite 配置

Nginx Rewrite 配置

WBOY
WBOY原創
2016-06-06 20:51:25941瀏覽

这个是我现有的配置.

	location / {
		index index.php;
	}
	
	location /request/ {
		rewrite ^/request/(.+)$ /request?model=$1 break;
	}
	
	location ~ \.php {
		fastcgi_pass 127.0.0.1:9000;
		fastcgi_index index.php;
		include fastcgi_params;
		fastcgi_param REQUEST_METHOD $request_method;
	}

我现在要实现的是,当访问: /request/concact 路径时,rewrite 到/request/?model=contact

然后不丢失POST 参数并且浏览器不跳转。

现在这个配置给我的麻烦是,请求从POST rewrite成了GET, 并且地址做了跳转。

回复内容:

这个是我现有的配置.

	location / {
		index index.php;
	}
	
	location /request/ {
		rewrite ^/request/(.+)$ /request?model=$1 break;
	}
	
	location ~ \.php {
		fastcgi_pass 127.0.0.1:9000;
		fastcgi_index index.php;
		include fastcgi_params;
		fastcgi_param REQUEST_METHOD $request_method;
	}

我现在要实现的是,当访问: /request/concact 路径时,rewrite 到/request/?model=contact

然后不丢失POST 参数并且浏览器不跳转。

现在这个配置给我的麻烦是,请求从POST rewrite成了GET, 并且地址做了跳转。

rewrite ^/request/(.+)$ /request?model=$1 break;

这句第二个request后面加一个斜杠就好了:

rewrite ^/request/(.+)$ /request/?model=$1 break;
陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn