PrestaShop 1.7如何配置子域名形式的多店铺
可行性结论
PrestaShop 1.7完全支持子域名形式的多店铺部署,你当前可以正常访问子路径形式的店铺,说明核心多店铺功能本身运行正常,配置失效的核心原因是域名映射、后台URL规则、重写规则三者没有对齐,不需要修改系统核心文件即可完成配置。
分步配置流程
cPanel端域名配置
这一步是最高发的错误点:
- 新建需要的子域名
someshop.domain.com、anothershop.domain.com时,不要使用cPanel默认生成的同名子目录作为文档根目录,必须将两个新子域名的文档根路径,和现有prestashop.domain.com的文档根路径完全一致,也就是指向存放PrestaShop 1.7核心安装文件的那个public_html子文件夹。PrestaShop的多店铺路由是靠请求携带的域名识别对应店铺,所有子域名必须指向同一套核心代码才能触发路由逻辑。 - 域名解析生效后,先在PrestaShop根目录上传一个简单的测试html文件,分别访问两个新子域名下的该测试文件,确认可以正常加载,证明域名指向配置正确,再进行后续操作。
- 若你已经部署了SSL证书,建议直接申请通配符SSL证书覆盖所有子域名;如果使用单域名证书,需要给每个新增子域名单独部署证书,避免访问时出现安全警告。
PrestaShop后台配置
- 登录后台进入「高级参数 > 多店铺」页面,确认多店铺功能处于开启状态。
- 在店铺列表中找到你之前创建的someshop、anothershop店铺,点击进入URL设置页:
- 「店铺域名」字段填写对应子域名,例如someshop店铺填写
someshop.domain.com - 「物理URI」字段全部清空,不要保留任何子路径内容(你之前能通过
prestashop.domain.com/someshop访问,就是因为该字段填写了子路径值) - 已开启HTTPS的情况下,「SSL域名」字段填写对应带https协议头的子域名即可
- 「店铺域名」字段填写对应子域名,例如someshop店铺填写
- 所有店铺URL修改完成后,进入「高级参数 > 性能」页面,清空全部系统缓存。
重写规则校验
- 进入cPanel文件管理器,打开PrestaShop根目录下的
.htaccess文件,删除之前手动添加的、和子路径店铺跳转相关的自定义规则,同时检查是否存在硬编码绑定prestashop.domain.com的强制跳转规则,存在则一并删除。 - 如果不确定默认规则是否正确,直接进入后台「首选项 > SEO和URL」页面,无需修改任何参数直接点击保存,系统会自动根据当前的多店铺配置,重新生成标准的URL重写规则。
配置完成后测试时,建议先清空浏览器本地缓存再访问子域名,避免之前的子路径跳转缓存导致访问异常;如果出现页面样式丢失、静态资源加载失败的问题,进入「设计 > 主题与logo」页面对应店铺的配置项,确认静态资源路径没有绑定旧的子路径地址,保存后再次清空系统缓存即可。
内容的提问来源于stack exchange,提问作者Ali Samie
相关产品推荐
相关产品推荐

