nginx+thinkphp下解决不支持pathinfo模式
程序员文章站
2022-10-21 14:45:42
nginx环境问题弄了两天,发现网上很多人的帖子要么复制粘贴,要么就是没有结贴,还自己写一句“哈哈,我自己解决了”之类的,这点我就鄙视这些发帖的同胞了,你说你问题问了,问题...
nginx环境问题弄了两天,发现网上很多人的帖子要么复制粘贴,要么就是没有结贴,还自己写一句“哈哈,我自己解决了”之类的,这点我就鄙视这些发帖的同胞了,你说你问题问了,问题解决了也不给个解释。还在搜索的前几页,想没想过需要答案的人的感受呢。满心欢喜的去看答案,发现没有结贴。好吧,不多说,进入正题。
我这种方式是不需要将url_model改为rewrite/兼容的:
大约第43行,按照下面的对照自己的code进行修改,请注意细节的符号:
location / { root c:/zend/workspaces; #//这是你自己项目的根目录。 index index.html index.htm index.php; if (!-e $request_filename) { rewrite ^/(.*)$ /index.php/$1 break; break; } }
在php的配置中,将location ~ \.php$ 改为 location ~ \.php,再次强调,注意细节,这里去掉了$符号,我刚开始也是因为这个原因一直没能解决。
location ~ \.php { root c:/zend/workspaces; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param script_filename c:/wnmp/php$fastcgi_script_name; include fastcgi_params; set $path_info ""; 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; }
如果仍未解决,在thinkphp入口文件index.php中加入配置define(‘_php_file_',$_server['script_name']);
期间大家可能会遇到500,404的问题,但记住一点,细心就行。只要按照我这个改,基本没什么问题。如果还有问题,欢迎留言咨询。
以上所述就是本文的全部内容了,希望大家能够喜欢。
上一篇: PHP中的常见魔术方法功能作用及用法实例
下一篇: 武则天猜谜语
推荐阅读
-
Nginx下配置pathinfo及ThinkPHP的URL Rewrite模式支持
-
Ubuntu下Nginx配置ThinkPHP的Pathinfo和URl Rewrite模式
-
Ubuntu下开启php调试模式报错信息解决办法
-
解决VMware下64位linux系统不支持全虚拟化的办法
-
完美解决jsp页面在IE8下文本模式自动为(杂项Quirks)导致页面显示错位
-
解决nginx不支持thinkphp中pathinfo的问题
-
.net下灰度模式图像在创建Graphics时出现:无法从带有索引像素格式的图像创建graphics对象 问题的解决方案。
-
php命令行(cli)模式下报require 加载路径错误的解决方法
-
用VMWare搭建服务器集群不能上外网的三种模式下对应解决办法
-
nginx+thinkphp下解决不支持pathinfo模式