M2 项目线上版 deploy 流程

7.40K 浏览M2安装设置

M2 项目线上版 deploy 流程

我们一般都是在开发版服务器里开发,然后在线上服务器进行pull和deploy。
很多小伙伴不知道怎么在线上部署,经常问我,我有必要说明一下。

1,如果线上不是production模式。需要改成production模式

php bin/magento deploy:mode:set production

2,开启维护模式

php bin/magento maintenance:enable

如果有用git进行版本控制的话,需要下载最新代码

git pull origin master

3,清缓存

rm -rf var/di/* && rm -rf var/generation/* && rm -rf var/cache/* && rm -rf var/page_cache/* && rm -rf var/view_preprocessed/* && rm -rf pub/static/* && rm -rf generated/* && mkdir var/di

解释下,m2会生成代码缓存和magento文件缓存和静态文件。
静态文件放在static,所有的css/js/html都在这个里面。
代码缓存在generation目录。2.2.0之前的版本代码缓存在var/generation。
magento文件缓存在var/cache/里
全页面文件缓存在var/pace_cache里
所以都需要删除,不然的话 会有影响。

4, 更新插件和编译代码

php bin/magento setup:upgrade && php bin/magento setup:di:compile

5,生成语言文件(如果你没有手动修改改语言包的代码,这一步可以省略
比如修改了芬兰语,要合并语言的话:

php bin/magento i18n:pack -m "merge" /项目路径/app/i18n/公司名/fi_FI/fi_FI.csv -d fi_FI

6,deploy生成缓存文件 并reindex 清magento缓存 部署上线
比如我网站前台有3个店3种语言,分别是芬兰语/英语/瑞典语。

php bin/magento setup:static-content:deploy fi_FI en_US sv_SE -f && php bin/magento indexer:reindex && php bin/magento maintenance:disable && php bin/magento cache:clean && php bin/magento cache:flush

这样就ok了。

0