如何将自定义Shopware 6主题迁移部署到线上生产服务器?
Shopware 6 本地自定义主题迁移到生产服务器操作流程
第一步:本地主题打包准备
- 首先确认你的本地主题存放路径:通过
theme:createCLI命令创建的主题默认存放在Shopware根目录的custom/plugins/下,如果是手动创建的App类型主题则存放在custom/apps/下,找到对应的主题目录即可 - 进入本地Shopware根目录,执行命令导出主题的静态资源:
bin/console theme:compile,确保所有自定义样式、脚本都已编译完成 - 把你的主题目录完整打包成zip压缩包,注意不要带上父级目录,解压后直接呈现主题的所有核心文件(包含
src、Resources、composer.json等)
第二步:上传主题到生产服务器
- 登录生产服务器SSH,进入Shopware根目录对应存放目录:插件类型主题进入
custom/plugins/,App类型主题进入custom/apps/ - 把本地打包好的zip压缩包上传到该目录,执行
unzip 你的主题压缩包名称.zip解压,确认解压后的目录权限和服务器现有同层级目录权限保持一致,通常设置为www-data:www-data即可
第三步:生产环境安装激活主题
- 回到Shopware根目录,执行命令刷新插件列表:
bin/console plugin:refresh - 执行命令安装并激活主题插件:
bin/console plugin:install --activate 你的主题技术名称,主题的技术名称可以在主题根目录的composer.json里的name字段找到 - 执行命令编译生产环境的主题资源:
bin/console theme:compile - 清空所有缓存:
bin/console cache:clear - 登录Shopware后台,进入「内容」-「主题管理」,即可看到上传的自定义主题,点击「激活」并分配到对应的销售渠道即可生效
注意事项
- 迁移前请备份生产环境的数据库和
custom目录,避免操作失误导致数据丢失 - 如果你的主题依赖额外的自定义插件,需要先把依赖的插件提前安装到生产环境并激活
- 操作前可先开启生产环境维护模式避免影响用户访问:
bin/console maintenance:enable,全部操作完成后再关闭维护模式:bin/console maintenance:disable
内容的提问来源于stack exchange,提问作者Magnus von Bromsen
相关产品推荐
相关产品推荐

