我想实现用户请求 x.com/api/dosomething 转发到网站根目录下的/api.php处理.
不存在的文件交给 /index.php处理,nginx配置如下
if (!-e $request_filename) { rewrite (.*) /index.php$1 last; }location ^~ /api/{ rewrite (.*) /api.php$1 last;}location ~ (index|api|admin).php { fastcgi_split_path_info ^(.+\.php)(/.+)$; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; include fastcgi_params; fastcgi_param path_info $fastcgi_path_info; fastcgi_param script_filename $document_root$fastcgi_script_name; }
但是我发现访问x.com/api/dosomething的时候匹配了 ! -e $request_filename,调准顺序也没有用,请问应该如何配置
回复内容: 我想实现用户请求 x.com/api/dosomething 转发到网站根目录下的/api.php处理.
不存在的文件交给 /index.php处理,nginx配置如下
if (!-e $request_filename) { rewrite (.*) /index.php$1 last; }location ^~ /api/{ rewrite (.*) /api.php$1 last;}location ~ (index|api|admin).php { fastcgi_split_path_info ^(.+\.php)(/.+)$; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; include fastcgi_params; fastcgi_param path_info $fastcgi_path_info; fastcgi_param script_filename $document_root$fastcgi_script_name; }
但是我发现访问x.com/api/dosomething的时候匹配了 ! -e $request_filename,调准顺序也没有用,请问应该如何配置
咋一看配置没错啊,我本地试试再说。。。