我无法微调Nginx的URL重写规则的正则表达式,我想要做的是拿走网址的前两部分,并将它们转换为变量(没有太花哨,应该简单)。Nginx的网址重写微调
例如我在http://www.webserver.com/piece1/piece2键入并获得http://www.webserver.com/rewtest.php??val1=piece1&val2=piece2
到目前为止,我有:
location/{
rewrite ^/(.*)/(.*)/? /rewtest.php?val1=$1&val2=$2 last;
return 404;}
}
这似乎工作。问题是,如果用户键入http://www.webserver.com/piece1/piece2/它将val 1作为piece1/piece2(作为1变量,而不是2)。
另外,如果用户要键入http://www.webserver.com/piece1/我目前得到piece1在var 1,这是伟大的。但如果用户输入http://www.webserver.com/piece1它给了我一个错误,我想得到相同的(VAR 1 = piece1)。
任何帮助非常感谢,因为我是新的正则表达式!
可能/需要以某种方式逃脱,例如作为\ /? –