You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Drupal 10.6.1文件链接自动插入index.php失效,如何解决?

Drupal 10.6.1 文件链接带index.php无法访问的排查方案
  • Clean URLs配置与服务器重写规则检查
    尽管节点链接无论带不带index.php都能访问,但Clean URLs的生效逻辑可能存在异常:

    • 进入admin/config/search/clean-urls,确认Clean URLs已启用,若已启用,重新保存该页面触发路由重建。
    • 检查服务器重写规则:Apache需确保.htaccess中保留了静态文件直接访问的规则(默认规则会跳过sites/default/files等目录的index.php转发);Nginx需确认配置中对/sites/default/files/*的请求直接返回文件,而非转发到index.php。若规则被修改或缺失,会导致文件链接被强制追加index.php。
  • 文件系统基础URL校验

    • 进入admin/config/media/file-system,确认「公共文件系统的基础URL」为/sites/default/files(不含index.php),若配置正确,重新保存并清除缓存。
    • 检查settings.php中是否存在$settings['file_public_base_url']的手动配置,确保其值为正确的相对/绝对路径,无index.php前缀。
  • 缓存与路由重建

    • 所有链接均带index.php,通常是Drupal未正确识别Clean URLs状态导致的。执行全缓存清除:使用drush cr命令,或进入admin/config/development/performance点击「清除所有缓存」。
    • 验证Apache的mod_rewrite模块是否启用,Nginx的Drupal路由转发规则是否正确配置。
  • 自定义代码与第三方扩展排查

    • 临时切换至Olivero默认主题,禁用所有非核心模块,测试文件链接是否恢复正常。若正常,逐个启用模块/主题定位问题源。
    • 检查是否存在自定义模块使用hook_file_url_alter()等钩子修改文件URL,导致追加index.php。

内容的提问来源于stack exchange,提问作者Paul Tomblin

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.11 19:12:07