在CRMEB电商系统(包含<标准版>、

CRMEB后端生成海报时并非直接使用相对路径,而是调用系统配置中的站点域名参数完成图片地址拼接。该参数的配置入口一般位于后台【系统设置】->【系统配置】->【上传设置】或【基础设置】中,字段名称常见为“访问域名”、“商城域名”、“图片域名”等。对应的数据库存储位置为`sys_config`表,键名包括`site_url`、`upload_url`、`h5_url`等(不同版本或二次开发后键名略有差异,但均以存储URL前缀为核心)。
当站点接入阿里云OSS、腾讯云COS等云存储时,海报域名路径则来源于云存储配置中的Bucket域名或CDN加速域名。管理员需要在【第三方接口】->【云存储设置】中填写正确的`domain`或`endpoint`,确保CRMEB生成海报时下载和访问的图片均指向该有效域名。
在程序实现层面,CRMEB会通过`request->domain()`方式动态读取当前请求域名,或者在辅助函数中调用配置存储服务获取已保存的域名。若后台配置的域名与当前访问入口域名不一致,则可能导致海报文件路径错误,表现为海报中图片不展示、二维码无法识别等问题。
另外,“海报域名路径”在部分CRMEB版本中也可用于指代海报下载域名白名单。为了防止盗链和远程图片下载的恶意攻击,系统在合成海报时会校验远程图片URL的域名是否在可信任白名单内。该白名单的后台路径通常为【系统设置】->【安全设置】->【域名白名单/防盗链设置】,管理员需要将图片服务器域名手工添加进去,例如`img.example.com`或使用通配符`*.example.com`。
修改海报域名路径相关配置后,必须清理CRMEB运行时缓存(包括Redis缓存及`runtime/cache`目录),否则生成的临时海报仍会引用旧的域名值。最终的完整海报图片URL默认为:`{访问域名}/upload/{相对路径}`,示例:`https://shop.example.com/upload/goods/20240101/abc.jpg`。
为保证各端一致性,建议同时检查`.env`环境文件、`config/upload.php`配置文件以及后台可视化设置,确保后台域名、数据库配置、H5前端部署域名三处统一。具体以CRMEB官方文档【系统设置-域名配置】及当前版本源码中`parsePosterUrl`等函数逻辑为准。

查看详情

查看详情