如何在Linux实例上搭建Magento电子商务网站
本篇文章给大家带来的内容是关于如何在Linux实例上搭建Magento电子商务网站,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。
在Linux实例上搭建Magento电子商务网站
Magento是一款开源电商网站框架,其丰富的模块化架构体系及拓展功能可为大中型站点提供解决方案。它使用PHP开发,支持版本范围从PHP 5.6到PHP 7.1,并使用MySQL存储数据。本文主要说明如何在阿里云ECS实例上搭建Magento电子商务网站,使用的操作系统为Linux CentOS 7.2 64位。
适用对象
适用于熟悉ECS,熟悉Linux系统,刚开始使用阿里云进行建站的用户。
资源
本文描述的操作涉及的Linux ECS实例配置包括:2 vCPU、4 GiB内存、Cent OS 7.2 64位操作系统、VPC网络、分配的公网IP地址。
说明:用于搭建Magento 2的服务器,内存不能小于2 GiB。
根据本文搭建的Magento电子商务网站,使用的软件版本信息如下:
MySQL 5.7
PHP 7.0
Magento 2.1
前提条件
您已经创建了一台VPC网络类型的Linux ECS实例,详细操作,请参见 创建ECS实例。配置包括:2 vCPU、4 GiB内存、Cent OS 7.2 64位操作系统、VPC网络、分配公网IP地址。
ECS实例所在安全组中已经添加了如下表所示的安全组规则。详细操作,请参见 创建ECS实例 和 添加安全组规则。
操作步骤
使用云服务器ECS搭建Magento网站的操作步骤如下:
步骤1. 安装配置LAMP平台
步骤2. 创建数据库
步骤3. 安装配置Composer
步骤4. 安装配置Magento
步骤5. 添加cron作业
步骤1. 安装配置LAMP平台
本部分内容说明如何手动安装LAMP平台。您也可以在 云市场 购买LAMP镜像直接启动ECS实例,以便快速建站。
依次运行以下命令更新包和存储库,并安装Apache Web服务器和MySQL服务器。
# yum -y update # yum -y install httpd # rpm -Uvh http://dev.mysql.com/get/mysql57-community-release-el7-8.noarch.rpm # yum -y install mysql-community-server
启动HTTP和MySQL服务并设置开机自启动。
# systemctl start httpd # systemctl enable httpd # systemctl start mysqld # systemctl enable mysqld
编辑Apache配置文件:
运行命令vim /etc/httpd/conf/httpd.conf。
按 i 键进入编辑模式。
做以下修改:
在 Include conf.modules.d/*.conf 之后添加 LoadModule rewrite_module modules/mod_rewrite.so。
将以下内容的 AllowOverride None 改为 AllowOverride all。
Options Indexes FollowSymLinks
# 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
按 Esc 键退出编辑,并输入 :wq 保存并退出。
查看/var/log/mysqld.log文件,获取安装MySQL时自动设置的root用户密码。
# grep 'temporary password' /var/log/mysqld.log 2016-12-13T14:57:47.535748Z 1 [Note] A temporary password is generated for root@localhost: p0/G28g>lsHD
运行下面的命令可以从如下4个方面提高MySQL的安全性:
设置root账号密码
禁止root账号远程登录
删除匿名用户账号
删除test库以及对test库的访问权限
详细说明可参见 官方文档。
# mysql_secure_installation Securing the MySQL server deployment. Enter password for user root: #输入第4步中获取的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: #输入密码 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 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. Normally, root should only be allowed to connect from 'localhost'. This ensures that someone cannot guess at the root password from the network. Disallow root login remotely? (Press y|Y for Yes, any other key for No) : Y #禁止root远程登录,输入Y Success. By default, MySQL comes with a database named 'test' that anyone can access. This is also intended only for testing, and should be removed before moving into a production environment. Remove test database and access to it? (Press y|Y for Yes, any other key for No) : Y #是否删除test库和对它的访问权限,输入Y - Dropping test database... Success. - Removing privileges on test database... Success. Reloading the privilege tables will ensure that all changes made so far will take effect immediately. Reload privilege tables now? (Press y|Y for Yes, any other key for No) : Y #是否重新加载授权表,输入Y Success. All done!
依次运行以下命令,安装PHP 7和一些所需的额外PHP扩展。
# yum install -y http://dl.iuscommunity.org/pub/ius/stable/CentOS/7/x86_64/ius-release-1.0-14.ius.centos7.noarch.rpm # yum -y update # yum -y install php70u php70u-pdo php70u-mysqlnd php70u-opcache php70u-xml php70u-gd php70u-mcrypt php70u-devel php70u-intl php70u-mbstring php70u-bcmath php70u-json php70u-iconv
查看PHP版本,以验证PHP是否已经成功安装。
# php -v PHP 7.0.13 (cli) (built: Nov 10 2016 08:44:18) ( NTS ) Copyright (c) 1997-2016 The PHP Group Zend Engine v3.0.0, Copyright (c) 1998-2016 Zend Technologies with Zend OPcache v7.0.13, Copyright (c) 1999-2016, by Zend Technologies
编辑配置文件/etc/php.ini:
运行命令 vim /etc/php.ini。
按 i 进入编辑模式。
在文件最后添加以下配置:
memory_limit = 128M #根据实际情况增加内存限制
date.timezone = Asia/Shanghai #设置时区为上海。
重启Web服务进程。
# systemctl restart httpd
步骤2. 创建数据库
按以下步骤创建数据库。
创建数据库及用户:为Magento数据创建一个数据库和一个数据库用户,数据库和用户名可根据实际情况修改。
# mysql -u root -p Enter password: mysql> CREATE DATABASE magento; #根据实例情况替换magento Query OK, 1 row affected (0.00 sec) mysql> GRANT ALL ON magento.* TO YourUser@localhost IDENTIFIED BY 'YourPass'; #根据实际情况替换YourUser和YourPass Query OK, 0 rows affected, 1 warning (0.00 sec) mysql> FLUSH PRIVILEGES; Query OK, 0 rows affected (0.00 sec)
运行 exit 退出MySQL。
(可选)验证新建的Magento数据库和用户是否可用。
# mysql -u YourUser -p mysql> show databases; +--------------------+ | Database | +--------------------+ | information_schema | | magento | +--------------------+ 2 rows in set (0.00 sec) mysql> exit
步骤3. 安装配置Composer
Composer是PHP一个包管理和包依赖管理的工具。按以下步骤安装配置Composer。
安装Composer。
# curl -sS https://getcomposer.org/installer | php All settings correct for using Composer Downloading 1.2.4... Composer successfully installed to: /root/composer.phar Use it: php composer.phar
配置Composer全局使用。
# mv /root/composer.phar /usr/bin/composer
测试命令是否可用。
# composer -v ______ / ____/___ ____ ___ ____ ____ ________ _____ / / / __ \/ __ `__ \/ __ \/ __ \/ ___/ _ \/ ___/ / /___/ /_/ / / / / / / /_/ / /_/ (__ ) __/ / \____/\____/_/ /_/ /_/ .___/\____/____/\___/_/ /_/ Composer version 1.2.4 2016-12-06 22:00:51
步骤4. 安装配置Magento
您可以使用不同的方法安装Magento,也可以选择是否安装示例数据。如果安装Magento仅用于测试,您可以选择安装示例数据。如果是在生产环境中安装Magento,建议您安装全新的Magento,从头开始配置。
本部分介绍如何使用git下载Magento,然后使用Composer安装Magento。
依次运行以下命令,通过 git clone 下载Magento。
# yum -y install git # cd /var/www/html/ # git clone https://github.com/magento/magento2.git
(可选)将Magento切换到稳定版本。
默认情况git下载安装Magento是一个最新的开发版本。如果您在生产环境中使用,建议切换到稳定版本,否则未来将无法升级安装。
# cd magento2 && git checkout tags/2.1.0 -b 2.1.0 Switched to a new branch '2.1.0'
将安装文件移到Web服务器根目录下。否则,您只能通过 http://[ECS实例公网IP地址]/magento2 访问您的Magento站点。
# shopt -s dotglob nullglob && mv /var/www/html/magento2/* /var/www/html/ && cd ..
设置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。
测试:在浏览器中访问 http://[ECS实例公网IP地址],如果出现以下页面,说明Magento安装成功。
单击 Agree and Setup Magento 开始配置Magento:按实际情况填写连接数据库信息、Web访问设置、定制商店、创建管理员账号。出现如下图所示的界面时,说明Magento配置完成
步骤5. 添加cron作业
运行 crontab -u apache -e 设置cron运行调度工作。
添加以下内容。
*/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
以上是如何在Linux实例上搭建Magento电子商务网站的详细内容。更多信息请关注PHP中文网其他相关文章!

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

热门话题

语言多线程可以大大提升程序效率,C 语言中多线程的实现方式主要有四种:创建独立进程:创建多个独立运行的进程,每个进程拥有自己的内存空间。伪多线程:在一个进程中创建多个执行流,这些执行流共享同一内存空间,并交替执行。多线程库:使用pthreads等多线程库创建和管理线程,提供了丰富的线程操作函数。协程:一种轻量级的多线程实现,将任务划分成小的子任务,轮流执行。

要打开 web.xml 文件,可以使用以下方法:使用文本编辑器(如记事本或 TextEdit)使用集成开发环境(如 Eclipse 或 NetBeans)使用命令行编辑命令(Windows:notepad web.xml;Mac/Linux:open -a TextEdit web.xml)

关于Linux系统自带Python解释器的删除问题许多Linux发行版在安装时会预装Python解释器,它并非通过软件包管理器�...

Linux最适合用作服务器管理、嵌入式系统和桌面环境。1)在服务器管理中,Linux用于托管网站、数据库和应用程序,提供稳定性和可靠性。2)在嵌入式系统中,Linux因其灵活性和稳定性被广泛应用于智能家居和汽车电子系统。3)在桌面环境中,Linux提供了丰富的应用和高效的性能。

DebianLinux以其稳定性和安全性着称,广泛应用于服务器、开发和桌面环境。虽然目前缺乏关于Debian与Hadoop直接兼容性的官方说明,但本文将指导您如何在Debian系统上部署Hadoop。 Debian系统需求:在开始Hadoop配置前,请确保您的Debian系统满足Hadoop的最低运行要求,这包括安装必要的Java运行时环境(JRE)和Hadoop软件包。 Hadoop部署步骤:下载并解压Hadoop:从ApacheHadoop官方网站下载您需要的Hadoop版本,并将其解

使用Go语言连接Oracle数据库时是否需要安装Oracle客户端?在使用Go语言开发时,连接Oracle数据库是一个常见需求�...

无法以 root 身份登录 MySQL 的原因主要在于权限问题、配置文件错误、密码不符、socket 文件问题或防火墙拦截。解决方法包括:检查配置文件中 bind-address 参数是否正确配置。查看 root 用户权限是否被修改或删除,并进行重置。验证密码是否准确无误,包括大小写和特殊字符。检查 socket 文件权限设置和路径。检查防火墙是否阻止了 MySQL 服务器的连接。
