PrestaShop 1.7模块前端控制器访问返回404错误排查求助
核心问题排查(90%概率触发404)
你的前端控制器目录名称不符合PrestaShop规范:
PrestaShop 1.7要求模块前端控制器必须放在controllers/front/(复数形式)目录下,你当前的路径是modules/cbd_calculator/controller/front/display.php,将单数字的controller目录名改为复数controllers即可。
后续必要操作
- 重置模块:修改完目录后,进入后台模块列表找到
cbd_calculator模块,点击重置,让PrestaShop重新注册控制器路由 - 清理缓存:进入后台「高级参数」-「性能」清空全部缓存,或者手动删除
var/cache/prod/、var/cache/dev/目录下的所有文件,避免旧路由缓存生效 - 测试访问:优先测试无友好URL的原生地址
http://localhost/index.php?fc=module&module=cbd_calculator&controller=display,确认正常后再测试友好URL格式的地址
辅助排查项
- 确认控制器类名拼写正确:你当前的类名
Cbd_CalculatorDisplayModuleFrontController符合模块名(保留下划线)+控制器名+ModuleFrontController的规范,无拼写错误即可 - 确认文件权限:
modules/cbd_calculator/目录下所有文件夹权限设为755、文件权限设为644,避免权限不足导致无法加载控制器文件 - 确认
.htaccess有效性:如果开启了友好URL,确认根目录的.htaccess是PrestaShop自动生成的默认规则,没有被手动修改覆盖
内容的提问来源于stack exchange,提问作者frenchqwerty
相关产品推荐
相关产品推荐

