为什么发贴会造成黑洞?

我正在开发一个使用CakePHP的应用程序,并遇到一个奇怪的问题:当我POST数据到一个特定的方法,我得到一个0字节的响应和访问日志中的一个简单的404错误。

psycho953.psych.susx.ac.uk - - [11/Oct/2011:10:17:43 +0100] "GET /research/ssd/aesthetics/participants/add HTTP/1.1" 200 3255 "-" "Mozilla/5.0 (Windows NT 5.1; rv:7.0.1) Gecko/20100101 Firefox/7.0.1" psycho953.psych.susx.ac.uk - - [11/Oct/2011:10:17:44 +0100] "POST /research/ssd/aesthetics/participants/add HTTP/1.1" 404 - "http://webvm.psych.sussex.ac.uk/research/ssd/aesthetics/participants/add" "Mozilla/5.0 (Windows NT 5.1; rv:7.0.1) Gecko/20100101 Firefox/7.0.1" 

发布到其他表单的工作,无论他们是否使用CakePHP或只是普通的PHP。

我不知道如何工作超出0字节的响应。 我的问题不是那么多“为什么这不工作?” 作为“我怎样才能找出什么是不工作?”

为了logging,php.ini设置为显示错误,并成功地这样做的语法错误等

好的,所以问题是由于一个错误,但我从来没有发现错误是什么。 我只是通过试验和( ahem )错误解决了这个问题,我仍然想知道如何能够更有条不紊地做到这一点。

对于任何感兴趣的人来说,这个问题与Cake期望的缺失字段有关。 我禁用了来自其他地方的数据预填充的input字段。 我没有意识到禁用input将会阻止它被提交的值。 我的解决方法是包含一个隐藏的字段。

虽然,我不知道为什么这些错误没有显示,我不知道为什么唯一的线索是访问日志中的404。 如果有人想为此提出一个理由,我将不会回答这个问题。


更新:certificate这是CakePHP的一个安全“function”。 我的表单有一个禁用的input,这意味着Cake传递给表单的字段名称的哈希与返回的信息不匹配(禁用的input不会被POSTED)。