看了大部分基本都是在Apache上进行配置的(配置网址),就是直接把文件放在/Library/WebServer/Documents中。个人配置完感觉很不方便,页面也还有很多问题。个人推荐使用nginx配置访问,不要使用Apache进行配置访问。
一、环境准备:官网
- php
- nginx
- mysql
- 版本>=5.6
- composer
二、下载安装包
官网地址
在下载时会提示注册账号,最好在此处注册,官网登陆的地方注册有问题。
注意:Format要选择zip(tar.gz是使用页面向导安装),勾选上sample data(示例数据,这个是很有必要的),下载前确认数据大小为333.33MB。
三、安装magento
- 将下载的代码存放在/usr/local/var/www/文件夹中
$ cd /usr/local/var/www/magento2
$ composer update
- –db-name的m2数据库需要提前建好
- –db-user=root --db-password=system需要更换为你mysql的账号密码
- 提示memory错误时,将/private/etc/php.ini和/usr/local/etc/php/7.2/php.ini 中的memory_limit = 2048M
- 提示MySQL server has gone away错误时,新增my.cnf文件,使用参考1配置,并修改max_allowed_packet = 500M。
- 提示Lost connection to MySQL server错误时:需要加上外网访问权限:
$ GRANT ALL PRIVILEGES ON . TO ‘root’@’%’ IDENTIFIED BY ‘youpassword’ WITH GRANT OPTION;
$ FLUSH PRIVILEGES;
$ php -f bin/magento setup:install --base-url=http://m2.local.com/ --backend-frontname=admin --db-host=localhost --db-name=m2 --db-user=root --db-password=system --admin-firstname=liu --admin-lastname=x --admin-email=123@163.com --admin-user=admin --admin-password=admin123 --language=zh_Hans_CN --currency=CNY --timezone=Asia/Shanghai --use-rewrites=1
$ php bin/magento setup:di:compile
$ php bin/magento setup:static-content:deploy -f
- 开发过程中,将系统运行模式改为开发者模式:
$ php bin/magento deploy:mode:set developer
四、赋予文件夹权限
如果不设置权限,会在访问http://m2.local.com/时报404错误,nginx的error.log会显示failed (13: Permission denied)
-
$ cat /etc/group | grep root
(查看用户名、用户组) $ chown -R root:staff /usr/local/var/www/magento2/
$ chmod 777 -R /usr/local/var/www/magento2/var
$ chmod 777 -R /usr/local/var/www/magento2/generated
$ chmod 777 -R /www/magento2/app/etc
-
$ rm -rf var/cache/* var/page_cache/* var/generation/*
(magento2目录下的,有就删) $ php bin/magento setup:di:compile;
五、配置nginx
这些是必要的配置:
# 使用上方的用户名、用户组
user root staff;
# 设置缓冲区的大小
fastcgi_buffers 16 16k;
fastcgi_buffer_size 32k;
# 配置/usr/local/var/www/magento2/nginx.conf.sample中fastcgi_backend
upstream fastcgi_backend {
# use tcp connection
server 127.0.0.1:9000;
# or socket
# server unix:/run/php/php7.2-fpm.sock;
}
server {
listen 80;
server_name m2.local.com;
# 文件目录
set $MAGE_ROOT /usr/local/var/www/magento2;
# 引用nginx.conf.sample的官方默认配置,可直接使用
include /usr/local/var/www/magento2/nginx.conf.sample;
}
六、hosts文件配置
配置m2.local.com映射为localhost,跟nginx的server_name、安装magento中第四条命令中的base-url相对应,可灵活配置。
$ sudo vi /etc/hosts
- 增加 127.0.0.1 m2.local.com
七、访问
重启nginx和php7.2-fpm即可访问已安装的magento2.3.6系统了
- 前台:http://m2.local.com/
- 后台:http://m2.local.com/admin
后台账号密码为:安装magento中第四条命令中,admin-user和admin-password