nginx服务器下重写问题

#1 sunxch100

在apache服务器本地测试没问题
上传到服务器,nginx服务器

http://www.xxx.com
http://www.xxx.com/index.php
http://www.xxx.com/session/login
http://www.xxx.com/index.php/session/login
http://www.xxx.com/index.php?c=session&a=login
以上任意url访问都不行,返回的状态码是200,页面空白

但如果输入一个错误的控制器名,又会报错,这个是怎么回事

请问jake,我用wordpress那个重写规则,还是不行,这个是怎么回事呢?

2011-09-16 18:26:59

#2 sunxch100

spRun();函数后面如果如果echo的话,居然会输出。
spRun();
echo '111';
111居然会输出。

2011-09-16 20:05:09

#3 sunxch100

回复 1 sunxch100


   spRun();函数后面如果如果echo的话,居然会输出。spRun();
echo '111';
111居然会输出。

2011-09-16 20:05:19

#4 sunxch100

找到一点苗头,那就是tpl下的html文件无法输出

2011-09-16 20:46:51

#5 jake

Nginx的重写设置和apache的完全不同。不能说apache可以就什么都可以。另外,建议上传后清理一下临时文件吧

2011-09-16 21:50:52

#6 sunxch100

回复 5 jake


    嗯,没用apache那一套规则,但我发现一个问题,那就是只要是echo,dump输出之类的就行,如果到了$this->display('a.html')就不行了

echo '111';
$this->display('a.html');
echo '222';

得到的结果是111222,中间那个a.html直接忽略了,tmp下的临时文件也清理了。

2011-09-17 08:58:49

#7 霸气千秋

:lol我记得ngix没有path_info,是不是这个搞的

2011-09-17 18:59:55

#8 jake

清理临时文件后上传,再试的时候看看临时文件有无产生

2011-09-18 00:55:40

#9 sunxch100

回复 8 jake


   果然是没有写权限,呵呵,谢谢jake提醒。

2011-09-19 11:18:51