标签 magento 下的文章

magento2 - 重新生成缓存目录各尺寸的图片 - php bin/magento catalog:image:resize

问题:下载的magento2和模板集成包,安装后首页部分演示图片不能正常显示,web返回404错误,到站点文件目录查看,是没有如 pub/media/catalog/product/cache/f9c7fbe9b524c081a3ccf800cbd963eb/ 的目录。

尝试:通过magento2的管理命令,执行 php bin/magento catalog:image:resize 重新生成缓存图片目录和文件。缺点是,如果图片多,可能会花时间较久。

参考:https://magento.stackexchange.com/questions/175224/regenerate-catalog-cache-images-issues

Magento - 站点的css文件不能正确加载 - 404 not found

现象:访问新建的带模板数据的magento2站点,样式表CSS等文件返回“404找不到”的错误信息,如 site-domain/pub/static/version1590556106/frontend/Zc/jo/en_US/css/bootstrap.css,但 site-domain/pub/static/frontend/Zc/jo/en_US/css/bootstrap.css 是可访问到的。

尝试:查看当前magento是在宝塔环境下运行的,使用magento文件包配置文件 nginx.conf.sample 的 rewrite规则,也是一样的404结果。但我们可以通过执行 bin/magento config:show dev/static/sign 0 的命令来禁用“静态文件标识”(static content signing),之后重新生成站点静态内容,网页就会引用 site-domain/pub/static/frontend/Zc/jo/en_US/css/bootstrap.css 的URL,不带“version数字”的了。

参考:

generated/code/Magento cannot be deleted - Directory not empty

现象:运行 bin/magento module:disable Mageplaza_Smtp 命令尝试禁用Magento2模块时,提示出错:

The directory "/var/www/html/generated/code/Magento" cannot be deleted Warning!rmdir(/var/www/html/generated/code/Magento): Directory not empty

尝试:检查发现 /generated 目录及子目录都有文件所有者写权限,删除失败可能是Magento2的定时任务在删除目录的过程中又生成新文件了。可以尝试临时停止Magento2的定时任务或Web进程后再次操作。

批量禁用或启用magento2的模块

需求:不知道哪个模块导致magento2的web进程占用CPU高。

尝试:可以通过禁用、启用模块来尝试诊断。如以下命令会禁用所有非Magento名字头的模块:

php bin/magento module:status | grep -v Magento | grep -v List | grep -v None | grep -v -e '^$'| xargs php bin/magento module:disable

参考: