首页 > 代码库 > Nginx配置pathinfo
Nginx配置pathinfo
Nginx默认不支持pathinfo格式的url,最近学习ThinkPHP的URL_MODEL时遇到了这个问题。Apache服务器下开启rewrite,将AllowOverride设置为All就ok了,但是Nginx却需要进一步配置,网上找了很多教程,大都是转载的比较多,试了好几个都没有成功。后来按照另一个教程进行配置,结果ok了。下面是配置过程。
1.Nginx.conf下配置如下 server { listen 80; server_name test.com; index index.php; root D:/phpStudy/WWW/test; #这里是开启rewrite隐藏index.php location / { if (!-e $request_filename) { # -e表示存在某个文件或目录 rewrite ^(.*)$ /index.php/$1 last; #last相当于apache中的[L],表示不再往下匹配 break; } } #这里是pathinfo的配置 location ~ \.php { fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; include fastcgi.conf; set $real_script_name $fastcgi_script_name; if ($fastcgi_script_name ~ "^(.+?\.php)(/.+)$") { set $real_script_name $1; set $path_info $2; } fastcgi_param SCRIPT_FILENAME $document_root$real_script_name; fastcgi_param SCRIPT_NAME $real_script_name; fastcgi_param PATH_INFO $path_info; } }
2.hosts文件里配置
127.0.0.1 test.com
ok,打开浏览器试下,http://test.com/Home/Index/index,欧拉!
Nginx配置pathinfo
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。