这是对one I asked a few days ago的后续问题,最终设法解决我自己。虽然我很高兴找到潜在的问题,但这个问题仅表现在一个(三个)环境中的事实看起来很奇怪。托管环境之间的HTTP重定向行为不一致
该问题与CakePHP 2.3.0站点上在控制器中重定向的操作($this->redirect(...);
)有关。基本上,重定向在我的本地(Mac OS X/10.6.8,Apache/2.2.17,PHP/5.3.4)开发机器以及我的同事(Windows 7,Apache/2.4.2, PHP/5.4.3)。 “添加”操作插入记录到数据库中,然后重定向到“索引”操作。用户登录工作正常。没有问题,一切都看起来正确。但是,在我们的临时服务器(Debian GNU/Linux 6.0.6内核3.2.6,Apache/2.2.22,PHP/5.3.15)上,试图重定向的任何控制器操作导致HTTP 200空白页面(而不是预期的HTTP 302重定向)。
该页面并非真正的空白,而是我最终发现的一个换行符在我的控制器之一中打开PHP标签之前错误地添加了。据我所知,换行本质上触发了头部输出的结束,因此无法写入Location: ...
头部。
一旦发现错误的换行符,这是一个快速修复,但我想知道为什么我在我的Mac或我的同事的Windows机器上看不到相同的空白页面行为。我不确定这是PHP还是Apache版本之间的怪癖,或者真的。我对任何人的理论都感兴趣,为什么事情会按照他们的方式行事。
如何在机器之间移动文件? – Raffaele 2013-03-12 17:26:12
我们有一个颠覆回购 – theraccoonbear 2013-03-12 18:08:51