Drupal 7安装Date模块后崩溃,菜单重建无效求助
解决Drupal启用Date模块后崩溃、菜单丢失的问题
哎,这种模块依赖的坑我之前也踩过!别慌,按下面的步骤一步步来,应该能把网站救回来:
1. 优先用Drush快速修复(有命令行权限的话)
这是最省事的办法:
- 登录服务器终端,执行命令彻底卸载出问题的两个模块:
drush pm-uninstall date date_api -y - 紧接着清理所有缓存:
drush cr - 做完这两步刷新网站,应该就能恢复正常访问了,之后再重新尝试安装模块。
2. 没有Drush?手动改数据库来禁用模块
如果没法用命令行,直接操作数据库:
- 打开你的数据库管理工具(比如PhpMyAdmin),找到
system表 - 搜索
name字段值为date和date_api的两条记录,把它们的status字段从1改成0(也就是禁用状态) - 然后找到所有以
cache_开头的表(比如cache_menu、cache_page、cache_block),清空这些表的内容 - 回到网站刷新,应该就能看到正常页面了
3. 重新安装前先检查版本兼容性
恢复网站后,先确认你下载的Date模块和Date API模块,和你的Drupal核心版本完全匹配!比如Drupal 7的话,必须用7.x分支的稳定版,有些旧版本的依赖逻辑有bug,很容易导致启用后路由、菜单崩溃。
4. 重新安装的正确姿势
- 先把Date API和Date模块上传到
sites/all/modules(或者你的自定义模块目录)并解压 - 先启用Date API,等页面加载完成、缓存刷新好,确认网站没毛病
- 再启用Date模块,启用后立刻清理缓存(后台手动清或者用
drush cr) - 如果还是出问题,去看服务器错误日志(比如Apache的error.log)或者数据库里的
watchdog表,里面会有具体的错误信息——比如是不是某个钩子函数报错,直接导致菜单生成失败了
另外你说重建菜单没用,其实是因为模块启用时已经把路由、菜单的缓存搞坏了,单纯重建菜单在模块本身有问题的情况下根本没用,必须先把出问题的模块禁用,再清缓存才行。
内容的提问来源于stack exchange,提问作者Sherin Bloemendaal
相关产品推荐
相关产品推荐

