Nginx 将目录重写为参数
我正在尝试重定向来自的请求Nginx 将目录重写为参数,nginx,nginx-location,Nginx,Nginx Location,我正在尝试重定向来自的请求 example.com/abc234to example.com/setup.html?s=abc234 到目前为止,我已经尝试了以下方法,但它似乎总是以1)不传输参数或2)以无限循环(或404)结束,因为它还尝试重定向重定向的请求?请求必须被明显地重写,因为我想用JS而不是PHP获取参数 server { server_name example.com; root /var/www/html; rewrite ^(.*)$ /set
example.com/abc234
to
example.com/setup.html?s=abc234
到目前为止,我已经尝试了以下方法,但它似乎总是以1)不传输参数或2)以无限循环(或404)结束,因为它还尝试重定向重定向的请求?请求必须被明显地重写,因为我想用JS而不是PHP获取参数
server {
server_name example.com;
root /var/www/html;
rewrite ^(.*)$ /setup.html?s=$1 redirect;
}
我还尝试了
location/{try_files…;}
的各种组合,或者在rewrite
中使用绝对URL,但没有成功。一种技术是只重写与物理文件不匹配的URI
例如:
server {
server_name example.com;
root /var/www/html;
location / {
try_files $uri $uri/ @rewrite;
}
location @rewrite {
return 302 /setup.html?s=$uri;
}
}
更多信息,请参阅。
重写^(.*)$/setup.html?s=$1重定向;
}