nginx 为参数创建 url 段
nginx creating url segment to parameter
所以我不确定主题名称是否正确所以这是我想做的...
我有一个 URL 这样的:
http://127.0.0.1/website_folder/userdata/account
现在我正在寻找一个 nginx 配置,它将我给定的 url 转换为 s.th 就像
index.php?url=userdata/account
为了
location /website_folder/ { }
fastcgi_pass unix:/var/run/php7.0-fpm.sock;
fastcgi_index index.php;
include fastcgi_params;
我真的希望有一个解决方案。
所以我测试了很多选项和东西所以我以这个结束:
location /website_folder/ {
if (!-d $request_filename){
set $rule_0 1$rule_0;
}
if (!-f $request_filename){
set $rule_0 2$rule_0;
}
if (!-e $request_filename){
set $rule_0 3$rule_0;
}
if ($rule_0 = "321"){
rewrite ^/website_folder/(.+)$ /website_folder/index.php?url= last;
}
}
也许有更好的选择来避免 if 语句,但是......它有效
所以我不确定主题名称是否正确所以这是我想做的...
我有一个 URL 这样的:
http://127.0.0.1/website_folder/userdata/account
现在我正在寻找一个 nginx 配置,它将我给定的 url 转换为 s.th 就像
index.php?url=userdata/account
为了
location /website_folder/ { }
fastcgi_pass unix:/var/run/php7.0-fpm.sock;
fastcgi_index index.php;
include fastcgi_params;
我真的希望有一个解决方案。
所以我测试了很多选项和东西所以我以这个结束:
location /website_folder/ {
if (!-d $request_filename){
set $rule_0 1$rule_0;
}
if (!-f $request_filename){
set $rule_0 2$rule_0;
}
if (!-e $request_filename){
set $rule_0 3$rule_0;
}
if ($rule_0 = "321"){
rewrite ^/website_folder/(.+)$ /website_folder/index.php?url= last;
}
}
也许有更好的选择来避免 if 语句,但是......它有效