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

使用DDEV Share时Craft CMS无法加载图片与CSS的问题求助

解决DDEV Share下Craft站点资源无法加载的方案

以下是针对问题的具体解决思路:

  • 修正Craft站点URL配置
    Craft生成资源链接依赖站点URL设置,需确保它指向Ngrok共享域名:

    • 临时修改.env文件中的PRIMARY_SITE_URL为当前ddev share生成的URL(如https://xxxx.ngrok.io)
    • 或通过环境变量动态适配:将PRIMARY_SITE_URL设为${DDEV_SHARE_URL:-http://my-site.ddev.site},这样共享时自动用Ngrok地址,本地开发用原域名
    • 同步检查Craft后台设置 > 站点中的站点URL配置,确保与共享URL一致
  • 调整Vite.js Craft插件配置
    由于CSS通过Vite加载,需让Vite生成的资源链接使用共享域名:

    • 打开config/vite.php,修改server配置中的origin字段,指向Ngrok共享URL,或利用DDEV环境变量动态设置:
      'server' => [
          'origin' => getenv('DDEV_SHARE_URL') ?: 'http://my-site.ddev.site',
      ],
      
    • 若希望资源路径相对化,可将base参数设为'/',确保资源路径基于根目录
  • 清除缓存
    修改配置后必须清除缓存,避免旧链接残留:

    • 执行ddev craft clear-cache命令清除Craft的模板、资产缓存
    • 手动清除浏览器缓存,强制加载新的资源链接
  • 优化DDEV Share参数

    • 确保Ngrok令牌已正确配置:执行ddev config global --ngrok-token=你的令牌,可通过ddev debug test验证Ngrok状态
    • 启动共享时添加Host头参数:ddev share --host-header=my-site.ddev.site,保证Craft能正确识别站点上下文

内容的提问来源于stack exchange,提问作者Matt B

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.12 01:11:07