Magento
Magento 是一个 面向全球用户的开源电商系统,它被用于 电子商务 内容营销技术 等场景。面向全球的企业级开源电商系统,支持B2C、B2B等应用场景,广泛应用于企业电商、独立站建站。
准备
在参阅本文档使用 Magento 时,需要确保如下几点:
-
登录 Websoft9 控制台,然后找到(或安装)Magento:
- 我的应用 菜单找到应用
- 应用商店 菜单部署应用
-
应用是基于 Websoft9 安装的
-
应用的用途符合 OSL-3.0 开源许可协议
-
为应用准备配置访问方式:配置域名 或 服务器安全组开启网外端口
入门指南
登录后台
Websoft9 控制台安装 Magento 后,通过 "我的应用" 查看应用详情,在 "访问" 标签页中获取登录信息。
切换为中文
Websoft9 已经预制 Magento 的中文包文件 zh_Hans_CN,只需启用它:
后台
以管理员身份登录 Magento,右上角 Account Setting > Interface Local, 选择 Interface Local 为中文
前台
-
进入 Magento 容器的命令模式,运行下面的命令
cd /bitnami/magento/
php bin/magento config:set --scope=stores --scope-code=default general/locale/code zh_Hans_CN
php bin/magento cache:clean
php bin/magento cache:flush -
以管理员身份登录 Magento,打开:Stores > Configuration > General > Locale Options,设置 Locale 为中文
安装扩展
Magento 核心功能之外的补充均称之为扩展,包括:模块、主体和语言包等。
扩展是通过 php composer 连接到 Magento 的 composer 仓库进行操作,安装扩展时需要输入仓库的 Access Key
设置 Access Key
Access Key 是 Magento 使用 Marketplace 资源的凭据:
-
注册 Magento 账号,登录 Marketplace,从 My Profile 的 Access Keys 页面新建一个自己的 Access Key
-
在 Magento 应用的根目录下基于 auth.json.example 创建一个新文件 auth.json
-
将 Access Key 填写到 auth.json 文件
缓存与索引
对 Magento 进行配置后,可能需要刷新缓存或重建索引:
- 通过 Magento 后台设置:System > Tools
- 命令行设置:
php bin/magento cache:flush
,php magento indexer:reindex
配置选项
-
命令行:
magento list
-
多语言(✅):需下载语言包后导入
-
在线备份:Stores > Configuration > ADVANCED > Backup Settings
-
SMTP(✅)
-
参考 Email communications 填写 SMTP 参数
-
后台 > 商店 > 设置 > 店铺电子邮件地址 > 通用联系方式 中填写发件人的电子邮箱(与 SMTP 邮箱同名)
-
管理维护
-
更换 URL 额外设置:Websoft9 控制台更换 Magneto 域名后,还需通过 CLI 更新 Magento URL
php bin/magento config:set web/unsecure/base_url http://www.mydomain.com/ # 修改成您的实际域名,必须以 / 结束
php bin/magento config:set web/secure/base_url http://www.mydomain.com/ # 修改成您的实际域名,必须以 / 结束 -
HTTPS 额外设置:Websoft9 控制台设置 Magento 的 HTTPS 后,还需通过 CLI 命令进行配置:
#1 set your url
php bin/magento setup:store-config:set --use-secure=1 --use-secure-admin=1 --base-url-secure="https://www.yourdomain.com/"
#2 flush cache
php bin/magento cache:flush -
升级:Magento 升级非常复杂,参考相关文档
故障
Cron job 告警?
错误:One or more indexers are invalid. Make sure your Magento cron job is running
方案:需重建索引后在后台刷新页面
php bin/magento indexer:reindex
Magento 运行很慢?
Magento 是一个复杂的企业级电商系统,对计算资源要求较高
找不到后台登陆地址?
进入 Magento 容器,通过命令一下命令查看或修改:
# Show Magento(URL)
magento info:adminuri
# Update Magento(URL)
magento setup:config:set --backend-frontname=[yourAdminUrl] -n
重定向导致无 法访问?
现象描述:错误信息为 ERR_TOO_MANY_REDIRECTS magento admin
原因分析:如果排除 '.htaccess' 文件中的重定向问题,那么最有可能是 URL 导致的
解决方案:通过命令行或 core_config_data 数据表修改 URL
php bin/magento setup:store-config:set --use-secure=1 --use-secure-admin=1 --base-url-secure="https://www.yourdomain.com/"
php bin/magento cache:flush
设置 HTTPS 后,页面混乱?
问题描述:设置 HTTPS 之后,网站可以访问,但是出现页面混乱的情况。
原因分析:未知
解决方案:
php bin/magento maintenance:enable
# 删除静态文件和缓存文件
php 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/*
# 重新 deploy 静态文件
php bin/magento setup:upgrade
php bin/magento setup:di:compile
php bin/magento setup:static-content:deploy -f
# 重建索引和缓存
php bin/magento indexer:reindex
php bin/magento cache:clean && bin/magento cache:flush
php bin/magento maintenance:disable
商品详情页不能正常显示?
问题描述:前台无法正常显示商品信息,错误 We can't find products matching the selection
问题原因:日志排查后发现是商品属性 eanl3 字段异常
解决方案:STORES > Attributes > Product 重新设置此字段