phalcon无限重定向

问题

换了个新电脑,后来重新配置phalcon环境。由于用得是windows,而且还用得是2.0.5得版本,官网已经没提供这个版本下载了。而旧电脑已经被格式化了,😳。

寻找旧版本

通过一番搜索,发现了一个issue,提到phalcon的旧版本放到了website仓库里

可惜也没有2.0.5的。

后来想如果找到2.0.5那个时候的提交记录,应该可以找到,于是在website仓库里搜索2.0.5,果然找到了。

把上图中的commit改为tree,进入下图目录,就可以找到编译好的dll了,链接在此

无限重定向

配置好后,phpinfo()正常,可是后台代码无限重定向到登录页

一开始以为是php版本问题,线上用的是php5.5,我本地用的php5.6,折腾了几次,还是不行。

怀疑重写文件

使用同事配置好的重写文件,还是错误

debug

配置搞不定,于是开始调试。发现dispatch等都是对的,而在router里获取url路径却出错了,每次都获取不到。
而url路径和重写文件相关,于是继续怀疑重写文件出错。

解决

后来下载了invo示例代码0.5的分支,使用里面的.htaccess最终解决了问题。

原因

错误的重写
RewriteRule ^(.*)$ index.php/$1 [L]

正确的重写
RewriteRule ^(.*)$ index.php?_url=/$1 [QSA,L]

第一种方法是pathinfo方式,第二种是url参数形势,关于pathinfo,可以参考这篇博客

posted @ 2018-01-04 10:33  半山th  阅读(579)  评论(0)    收藏  举报