在网上看了许多中文的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,则解决办法如下执行下面命令:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 | 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的,加油!。
讲的挺好的
文章不错非常喜欢
不错,蛮详细的
谢谢,本网站专注技术,欢迎你下次再来
文章不错非常喜欢
不错哦,学习了
谢谢了,希望你下次再来!
技术性文章不太懂。。。
你好,由于本人喜欢IT技术,所以只能以技术文章发表,不过后续我会写一些简单的技术文章,希望你下次再来,你的关注是对我们最大的支持。
文章不错非常喜欢
文章不错非常喜欢
文章不错支持一下吧
欢迎再来
格子老师 家访!!这才是真正的技术帝!!