原样的文件和数据库复制,在新的主机空间访问时,一页竟出现两百多个的dblog_watchdog写入查询,全部都是关于cck或cck相关模块(例如link模块)的警告提示。经查证,根源是是cck及cck相关的模块造成。到官网上查发现许多类似问题(Notice: Undefined variable: element),多数都要打补丁来解决。最后不得不卸载和重装部分模块,再给cck和link模块打补丁解决了事。
文章:http://drupal.org/node/1251146
cck补丁:http://drupal.org/files/issues/cck-1251146-1.patch
(cck打补丁时有一项被拒绝,可以忽略掉)
link模块的补丁:http://drupal.org/node/966442#comment-3854478
补丁下载:http://drupal.org/files/issues/link-_link_sanitize-966442-3.patch
打补丁的命令,进入对应目录:patch -b < file_patch
!*************************
几个小时之后,发现以上工作全是多余的
-----------------------------------------
根本原因是php的error_reporting设定!
新的主机的php的错误报告设定为error_reporting = E_ALL,包括提示和代码语法警告都会产生报告。
并且,原来drupal6是无视 display_errors = Off 的设定,只要有警告提示都统统写入watchdog!
解决办法很简单:php.ini 修改为 error_reporting = E_ALL & ~E_NOTICE,重启即可。
- 登录 发表评论
评论