我在配置 nginx 以返回我想要的 url 时遇到了麻烦。我想http://domain.com/blah?abc=e9800ecf8
返回http://domain.com/createpage.php?abc=e9800ecf8
,即它保留了abc
变量$_GET
createpage.php
位于 /www/webroot,但blah
不存在。我该怎么做?
这是我的配置文件的服务器块(显然,没有按照我想要的方式执行):
server {
root /www/webroot;
index index.html;
location / {
index index.html;
}
location = /blah {
return 301 /createpage.php;
}
}
答案1
server {
root /www/webroot;
index index.html;
location / {
if ($request_uri ~ "^/blah\?abc=([a-z0-9]+)$") {
return 301 /createpage.php?abc=$1;
}
}
}