在网上看了许多中文的magento2的安装教程,大多数都没有完整的安装步骤,本教程将教会你怎么使用和安装magento2.3最新版本的安装.
magento2.3系统需求:
如果想了解更多Magento 2系统需求,请点击这里Magento 2.3安装环境需求-教程(1)。
操作系统:Linux发行版如红帽企业Linux(RHEL),CentOS,Ubuntu,Debian,等等。
内存需求:升级的应用程序和扩展你的Magento从Magento市场和其他来源获得需要多达2GB的RAM。如果您使用少于2GB内存的系统,我们建议您创建一个交换文件;否则,您的升级可能会失败。
web服务器:
- Apache 2.2 or 2.4
- nginx 1.8 (或最新稳定版本)
数据库:
- MySQL 5.6Magento应用版本2.1.2后来与MySQL 5.7兼容。MariaDB和Percona是兼容Magento因为我们支持MySQL 5.6的API。
php版本需求
php5.6.5以上
本教程主要是centos7的安装 (CNMP)方式的部署centos7 + nginx + mariaDb + php 7
第一种安装方式
首先第1步 :
1
|
去官网下载magento2.3的源码:下载地址 https://magento.com/tech-resources/download
|
第2步:解压源码到你的安装web目录下
1
|
tar –xzvf magento2.3.tar.gz –C /var/www/html/magento2.3 //注意是gz格式压缩
|
第3步:删除.regenerate文件
1
|
rm –rf magento2.3/var/.regenerate
|
第4步: 设置权限
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
chown –R apache:apache var
find var –type f –exec chmod 0644 {} ;
find var –type d –exec chmod 0755 {} ;
chcon –t httpd_sys_content_t var –R
chcon –t httpd_sys_rw_content_t var –R
chown –R apache:apache vendor
find vendor –type f –exec chmod 0644 {} ;
find vendor –type d –exec chmod 0755 {} ;
chcon –t httpd_sys_content_t vendor –R
chcon –t httpd_sys_rw_content_t vendor –R
chown –R apache:apache generated
find generated –type f –exec chmod 0644 {} ;
find generated –type d –exec chmod 0755 {} ;
chcon –t httpd_sys_content_t generated –R
chcon –t httpd_sys_rw_content_t generated –R
|
第5步:访问nginx配置好的域名url地址
1
|
http://你的域名/setup/#/landing-install
|
如果你的服务器是nginx时,访问时出现了如下图错误提示:
解决办法是如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
|
查找根目录下 nginx.conf.sample配置 /setup 位置的块
location /setup {
root $MAGE_ROOT;
location ~ ^/setup/index.php {
###这就解决了问题
fastcgi_split_path_info ^(.+?.php)(/.*)$;
################################ 加上上面这一句话就可以了
fastcgi_pass fastcgi_backend;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
location ~ ^/setup/(?!pub/). {
deny all;
}
location ~ ^/setup/pub/ {
add_header X–Frame–Options “SAMEORIGIN”;
}
}
|
修改完后保存上传,执行命令
1
|
systemctl reload nginx
|
再次访问安装url,即使xianshi
第6步:继续下一步
解决办法: 缺少php扩展模块
1
|
yum install php–bcmath
|
第7步:安装后重启php
1
2
3
|
php–fpm –t
systemctl reload php–fpm
|
第8步:刷新页面
第9步:在数据库新建数据库
第10步:继续下一步
第11步:继续下一步
第12步:继续下一步
第13步完成安装。
第14步,安装完成后访问前端和后端,如果访问出现了 白屏或者是加载js和css文件404。
方法1,则解决办法如下执行下面命令:
php -f bin/magento setup:upgrade rm -rf cache/* page_cache/* generation/* php -f bin/magento setup:di:compile php -f bin/magento setup:static-content:deploy 执行这条命令如果错误在在后面加上 -f即可 #最后在刷新缓存 php -f bin/magento cache:flush #最后在安装magento根目录下给执行权限 chown -R nginx:nginx var find var -type f -exec chmod 0644 {} ; find var -type d -exec chmod 0755 {} ; chcon -t httpd_sys_content_t var -R chcon -t httpd_sys_rw_content_t var -R chown -R nginx:nginx generated find generated -type f -exec chmod 0644 {} ; find generated -type d -exec chmod 0755 {} ; chcon -t httpd_sys_content_t generated -R chcon -t httpd_sys_rw_content_t generated -R chown -R nginx:nginx pub/static find pub/static -type f -exec chmod 0644 {} ; find pub/static -type d -exec chmod 0755 {} ; chcon -t httpd_sys_content_t pub/static -R chcon -t httpd_sys_rw_content_t pub/static -R
方法2,执行下面数据库语句,看看是否为1,有可能数据库生成的静态文件路径设置有问题。
1
|
SELECT * FROM core_config_data WHERE path LIKE ‘%dev/static/sign%’ LIMIT 1;
|
把上面的value的值改为上图为0即可。
如果以上没有解决你的问题,则有可能你在安装Magento 2过程中安装不完整或不成功。可能的原因的是PHP执行时间过长导致安装不成功,虽然显示安装成功页面但是访问还是会报错的,这是因为在安装时Magenot 2的时候链接超时,导致PHP断开连接以至于前端显示假的安装成功页面,解决办法需要重新安装,设置PHP执行的时间最好设置300秒或更大,设置PHP内存大于2G。
安装步骤如下:
1
2
3
4
5
6
7
|
a. 第一步删除数据库安装的数据,或者直接删除数据库,重新建立数据库名。
b.配置php.ini修改成下面的配置,因为页面安装需要执行很久的php时间。如下设置
memory_limit = 2G
max_execution_time = 3800
zlib.output_compression = On
c.保存上传,然后重启 systemctl restart php7.2–fpm
d.清除缓存,再次进行安装。
|
下面还有一种最简单的安装方式:即使运用命令行进行安装如下
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
|
第一步:创建数据库
echo “CREATE DATABASE magento2” | mysql –u[mysqluser] –p
第二步:安装有两种一种是直接访问配置好的网页面版的。另一种是通过命令安装。如下
php bin/magento setup:install
—base–url=“http://yoururl.com/”
—db–host=“localhost”
—db–name=“dbname”
—db–user=“dbuser”
—db–password=“dbpass”
—admin–firstname=“admin”
—admin–lastname=“admin”
—admin–email=“user@example.com”
—admin–user=“admin”
—admin–password=“admin123”
—language=“en_US”
—currency=“USD”
—timezone=“America/Chicago”
—use–rewrites=“1”
—backend–frontname=“admin”
|
如果你是windows平台安装Magento 2报错,请点击查看,解决办法。
第15步,访问后台出现了如下图
则是需要配置计划任务,执行下列命令
使用root用户在centos 7中执行
1
2
3
4
5
6
|
#进行编辑
crontab –e
#编辑的代码如下
0 0 * * * php /var/www/html/magento/magento2–2.3.0/bin/magento
cron:run | grep –v “Ran jobs by schedule” >> /var/www/html/magento226/var/log/magento.cron.log
#每天凌晨执行一次
|
然后在安装magento根目录下在执行一次
1
2
3
4
|
在此执行一次后
[root@localhost magento2.3]# php bin/magento cron:run
Ran jobs by schedule.
[root@localhost magento2.3]#
|
再次刷新页面,提示信息不见了,说明计划任务配置完成。
第16步,如果安装插件则执行下列命令:
1
2
3
4
5
6
7
|
php bin/magento cache:clean
php bin/magento module:enable —clear–static–content Mageplaza_HelloWorld 开启模块
#其中Mageplaza_HelloWorld:指的是etc/model.xml的name value值
php bin/magento module:status
php bin/magento setup:upgrade
php bin/magento setup:di:compile
php bin/magento setup:static–content:deploy –f
|
即安装成功,希望本教程对你有帮助。
总结
magento 2.3的安装相对于magento 1来说比较复杂,m2植入了大量的命令行,这需要更为专业的magento开发人员来使用,如果初学者看了本篇文章将会对magento 2有所了解,为了magento 2学习不那么复杂,SKY8G网提供了magento 2的开发教程,后续会陆续更新有关于magento 2的开发文章,目的是教初学者一步一步步入一个真正的magento 2的开发人员。阅读了本篇教程,相信你会喜欢上Magento 2的,加油!。