搭建Magento电子商务网站
搭建Magento电子商务网站
https://help.aliyun.com/document_detail/50704.html
更新时间:2020-05-08 18:34:32
- 前提条件
- 背景信息
- 操作流程
- 步骤一:安装并配置Apache
- 步骤二:安装并配置MySQL
- 步骤三:安装并配置PHP
- 步骤四:创建Magento数据库
- 步骤五:安装并配置Composer
- 步骤六:安装配置Magento
- 步骤七:配置Magento客户端
- 步骤八:添加cron作业
- 后续步骤
- 相关文档
Magento是一款开源电商网站框架,其丰富的模块化架构体系及拓展功能可为大中型站点提供解决方案。Magento使用PHP开发,支持版本范围从PHP 5.6到PHP 7.1,并使用MySQL存储数据。本教程主要介绍如何在CentOS 7操作系统的ECS实例上搭建Magento电子商务网站。
前提条件
- 已注册阿里云账号。如还未注册,请先完成账号注册。
- 已完成实名认证。如还未认证,请先完成实名认证。
- 已在ECS实例安全组的入方向已添加规则并放行端口80和3306。具体操作,请参见添加安全组规则。
说明 大多数客户端位于局域网中,IP地址是经过转换的,因此ipconfig或ifconfig命令返回的IP不一定是客户端的真实公网IP地址。若后续客户端无法访问Magento网站,请重新确认其公网IP地址。
规则方向 授权策略 协议类型 端口范围 授权类型 授权对象 入方向 允许 HTTP(80) 80/80 IPv4地址段访问 所有要访问Magento站点的客户端公网IP地址,多个地址之间用逗号隔开。 允许所有客户端访问时,授权对象为0.0.0.0/0。
入方向 允许 MySQL(3306) 3306/3306 IPv4地址段访问 所有要访问MySQL数据库服务的客户端公网IP地址,多个地址之间用逗号隔开。 允许所有客户端访问时,授权对象为0.0.0.0/0。
背景信息
本教程使用的ECS实例硬件配置如下:
- 实例规格:ecs.c6.large
- 操作系统:公共镜像CentOS 7.2 64位
- CPU:2vCPU
- 内存:4GiB
说明 搭建Magento服务器,所选实例规格内存不能小于2GiB。
- 网络类型:VPC
- IP地址:公网IP
示例步骤使用以下软件版本:
- Apache:2.4.6
- MySQL:5.7
- PHP:7.0
- Composer:1.8.5
- Magento:2.1
当您使用不同软件版本时,可能需要根据实际情况调整命令和参数配置。
操作流程
在阿里云ECS实例上搭建Magento电子商务网站的操作流程如下:
- 步骤一:安装并配置Apache
- 步骤二:安装并配置MySQL
- 步骤三:安装并配置PHP
- 步骤四:创建Magento数据库
- 步骤五:安装并配置Composer
- 步骤六:安装配置Magento
- 步骤七:配置Magento客户端
- 步骤八:添加cron作业
步骤一:安装并配置Apache
- 安装Apache。
- 配置Apache。
- 运行以下命令打开Apache配置文件。
vim /etc/httpd/conf/httpd.conf
- 在
Include conf.modules.d/*.conf
的下一行,添加LoadModule rewrite_module modules/mod_rewrite.so
。具体步骤如下:- 移动光标到
Include conf.modules.d/*.conf
下一行的行首。 - 按下i键进入编辑模式。
- 输入
LoadModule rewrite_module modules/mod_rewrite.so
。
- 移动光标到
- 将下列内容中的
AllowOverride None
更改为AllowOverride All
。# AllowOverride controls what directives may be placed in .htaccess files. # It can be "All", "None", or any combination of the keywords: # Options FileInfo AuthConfig Limit # #在行首添加#注释掉本行内容 #AllowOverride None #添加下列内容 AllowOverride All
- 按下Esc键后,输入:wq并回车以保存并关闭配置文件。
- 运行以下命令打开Apache配置文件。
- 运行以下命令启动Apache服务。
systemctl start httpd
- 运行以下命令添加Apache服务开机自启动。
systemctl enable httpd
步骤二:安装并配置MySQL
- 安装MySQL。
- 运行以下命令添加MySQL YUM源。
rpm -Uvh http://dev.mysql.com/get/mysql57-community-release-el7-8.noarch.rpm
- 运行以下命令安装MySQL。
yum -y install mysql-community-server
- 运行以下命令添加MySQL YUM源。
- 运行以下命令启动MySQL服务。
systemctl start mysqld
- 运行以下命令设置MySQL服务开机自启动。
systemctl enable mysqld
- 配置MySQL。
- 运行以下命令查看/var/log/mysqld.log文件,获取并记录root用户的初始密码。
grep 'temporary password' /var/log/mysqld.log
命令的返回结果如下:
2016-12-13T14:57:47.535748Z 1 [Note] A temporary password is generated for aaa@qq.com: p0/G28g>lsHD
说明 下一步重置root用户密码时,会使用该初始密码。
- 运行下列命令配置MySQL的安全性。
安全性的配置包含以下五个方面:mysql_secure_installation
- 设置root账号密码。
Enter password for user root: #输入上一步中获取的root用户密码 The 'validate_password' plugin is installed on the server. The subsequent steps will run with the existing configuration of the plugin. Using existing password for root. Estimated strength of the password: 100 Change the password for root ? ((Press y|Y for Yes, any other key for No) : Y #是否更改root用户密码,输入Y New password: #输入密码,长度为8至30个字符,必须同时包含大小写英文字母、数字和特殊符号。特殊符号可以是()` aaa@qq.com#$%^&*-+=|{}[]:;‘<>,.?/ Re-enter new password: #再次输入密码 Estimated strength of the password: 100 Do you wish to continue with the password provided?(Press y|Y for Yes, any other key for No) : Y
- 输入
Y
删除匿名用户账号。By default, a MySQL installation has an anonymous user, allowing anyone to log into MySQL without having to have a user account created for them. This is intended only for testing, and to make the installation go a bit smoother. You should remove them before moving into a production environment. Remove anonymous users? (Press y|Y for Yes, any other key for No) : Y #是否删除匿名用户,输入Y Success.
- 输入
Y
禁止root账号远程登录。Disallow root login remotely? (Press y|Y for Yes, any other key for No) : Y #禁止root远程登录,输入Y Success.
- 输入
Y
删除test库以及对test库的访问权限。Remove test database and access to it? (Press y|Y for Yes, any other key for No) : Y #是否删除test库和对它的访问权限,输入Y - Dropping test database... Success.
- 输入
Y
重新加载授权表。Reload privilege tables now? (Press y|Y for Yes, any other key for No) : Y #是否重新加载授权表,输入Y Success. All done!
更多详情,请参见MySQL文档。
- 设置root账号密码。
- 运行以下命令查看/var/log/mysqld.log文件,获取并记录root用户的初始密码。
步骤三:安装并配置PHP
- 安装PHP。
- 运行以下命令添加ius源。
yum install \ https://repo.ius.io/ius-release-el7.rpm \ https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
- 运行以下命令添加Webtatic源。
rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
- 运行以下命令安装PHP7及所需扩展。
yum -y install php70w php70w-pdo php70w-mysqlnd php70w-opcache php70w-xml php70w-gd php70w-mcrypt php70w-devel php70w-intl php70w-mbstring php70w-bcmath php70w-json php70w-iconv
- 运行以下命令查看PHP版本。
返回结果如下所示,说明PHP安装成功。php -v
PHP 7.0.33 (cli) (built: Dec 6 2018 22:30:44) ( NTS ) Copyright (c) 1997-2017 The PHP Group Zend Engine v3.0.0, Copyright (c) 1998-2017 Zend Technologies with Zend OPcache v7.0.33, Copyright (c) 1999-2017, by Zend Technologies
- 运行以下命令添加ius源。
- 配置PHP。
步骤四:创建Magento数据库
- 运行以下命令使用root用户和密码登录MySQL。
mysql -u root -p
- 运行以下命令创建
magento
数据库。mysql> CREATE DATABASE magento; #根据实际情况将magento替换为您需要创建的数据库名称
- 依次运行以下命令为
magento
数据库创建用户。
例如,创建账号为mysql> GRANT ALL ON magento.* TO <YourUser>@localhost IDENTIFIED BY '<YourPass>'; #替换<YourUser>和<YourPass>为您需要创建的账号和密码 mysql> FLUSH PRIVILEGES;
magentoUser
、密码为aaa@qq.com
的用户,运行的命令为:mysql> GRANT ALL ON magento.* TO aaa@qq.com IDENTIFIED BY 'aaa@qq.com'; mysql> FLUSH PRIVILEGES;
- 输入exit并回车以退出MySQL。
-
可选:验证新建的Magento数据库和用户是否可用。具体步骤如下:
- 运行以下命令使用新建账号和密码登录MySQL。
mysql -u <YourUser> -p #替换<YourUser>为您创建的账号
- 运行以下命令查看新建的
magento
数据库。mysql> show databases; +--------------------+ | Database | +--------------------+ | information_schema | | magento | +--------------------+ 2 rows in set (0.00 sec)
- 运行以下命令并回车以退出MySQL。
mysql> exit
- 运行以下命令使用新建账号和密码登录MySQL。
步骤五:安装并配置Composer
Composer是PHP的一个依赖管理工具。Composer允许您申明项目所依赖的代码库,并帮您在项目中安装依赖的代码库。
- 运行以下命令安装Composer。
curl -sS https://getcomposer.org/installer | php
- 运行以下命令配置Composer全局使用。
mv /root/composer.phar /usr/bin/composer
- 运行命令composer -v查看Composer版本。返回结果如下,表示Composer安装成功。
/ ____/___ ____ ___ ____ ____ ________ _____ / / / __ \/ __ `__ \/ __ \/ __ \/ ___/ _ \/ ___/ / /___/ /_/ / / / / / / /_/ / /_/ (__ ) __/ / \____/\____/_/ /_/ /_/ .___/\____/____/\___/_/ /_/ Composer version 1.8.5 2019-04-09 17:46:47
步骤六:安装配置Magento
您可以使用不同的方法安装Magento,可以选择是否安装示例数据。
- 如果安装Magento仅用于测试,您可以选择安装示例数据。
- 如果安装Magento用于生产环境,建议您安装全新的Magento,从头开始配置。
本教程介绍使用git下载Magento,并使用Composer安装Magento的操作步骤。
- 下载Magento。
- 运行以下命令安装git。
yum -y install git
- 进入Web服务器的默认根目录。
cd /var/www/html/
- 下载Magento。
git clone https://github.com/magento/magento2.git
- 运行以下命令安装git。
-
可选:运行以下命令将Magento切换到稳定版本。
cd magento2 && git checkout tags/2.1.0 -b 2.1.0
命令执行后的结果如下:
Switched to a new branch '2.1.0'
说明 默认情况下,git下载安装的Magento是最新的开发版本。如果您在生产环境中使用,建议切换到稳定版本,否则未来将无法升级安装。
- 运行以下命令将安装文件移到Web服务器根目录下。
shopt -s dotglob nullglob && mv /var/www/html/magento2/* /var/www/html/ && cd ..
说明 运行此命令后,您可以通过
http://<ECS实例公网IP地址>
访问您的Magento站点。否则,您只能通过http://<ECS实例公网IP地址>/magento2
访问。 - 依次运行下列命令为Magento文件设置适当的权限。
chown -R :apache /var/www/html
find /var/www/html -type f -print0 | xargs -r0 chmod 640
find /var/www/html -type d -print0 | xargs -r0 chmod 750
chmod -R g+w /var/www/html/{pub,var}
chmod -R g+w /var/www/html/{app/etc,vendor}
chmod 750 /var/www/html/bin/magento
- 运行命令composer install安装Magento。
步骤七:配置Magento客户端
- 打开浏览器。
- 在浏览器地址栏中,输入
http://<ECS实例公网IP地址>
。 - 单击Agree and Setup Magento开始配置Magento。具体步骤如下:
步骤八:添加cron作业
完成以下操作,添加cron作业:
- 运行crontab -u apache -e设置cron运行调度工作。
- 按下i键进入编辑模式。
- 输入下列配置信息。
*/10 * * * * php -c /etc /var/www/html/bin/magento cron:run */10 * * * * php -c /etc /var/www/html/update/cron.php */10 * * * * php -c /etc /var/www/html/bin/magento setup:cron:run
- 按下Esc键后,输入:wq并回车以保存并退出。
Magento上使用cron作业的更多详情,请参见Magento官方文档。
后续步骤
- 访问
http://<ECS实例公网IP地址>
可以看到如下图所示的默认主页。 - 访问
http://<ECS实例公网IP地址>/admin
,输入您在安装过程中设置的用户名和密码,成功登录管理面板后可看到如下界面。
相关文档
上一篇: python 接收linux 命令返回数据分析统计
下一篇: HDLC 和PPP 的应用
推荐阅读
-
搭建Magento电子商务网站
-
Apache搭建http网站服务器问题记录
-
Magento 的安装 博客分类: PHP 电子商务phpapachezendMagento
-
篱笆论坛的故事 博客分类: 网站架构与运营策略 家居建材电子商务生活理财Ajax
-
wordPress 小白建站,教你亲手搭建一个自己的个人网站
-
[服务器] 搭建自己的第一个WordPress博客网站
-
so easy!一键快速生成,搭建一个属于自己的博客网站。
-
微信公众平台搭建与开发揭秘 博客分类: 计算机图书 电子商务google企业应用
-
j2ee 简单网站搭建:(二)添加和配置 spring + spring-mvc 的 mvc 开发环境
-
ubuntu 10.04上搭建php网站运行环境