2

我对 Drupal 站点(代码和数据库)进行了完全迁移。

乍一看网站工作正常。所有页面和页面内容都是完全可用的。

但是所有的 POST 表单都不起作用。我试图将测试消息放入形成钩子。表单生成工作正常,但验证和发送钩子甚至都没有被调用。

此外,所有标准表格(例如注册表单)也不起作用。

提交表单字段后立即变为空,没有任何错误或警告。

看起来环境之间的所有差异是:

  1. PHP 版本。(从 PHP 5.4 到 PHP 5.5)
  2. 服务器上的不同路径
  3. 另一个域名(dev/staging)

但是,我不确定。我可能错过了别的东西。

有没有人有任何想法可能导致这个问题?

4

1 回答 1

5

好吧,问题的原因很简单,同时也很混乱。

这不是 Drupal 相关的问题,它是 Apache Web 服务器的非常奇怪的行为。

mod_rewrite 在 Apache 配置中被禁用(我感到羞耻)。但是,尽管如此,Apache 仍在管理所有重定向,因此页面返回了正确的内容但带有 404 响应代码!它导致空 POST 并因此导致表单损坏。

我仍然无法理解为什么 Apache 会这样......无论如何,问题已经解决了。

于 2013-11-14T22:38:48.110 回答