如何在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实例 和 添加安全组规则。

微信截图_20180919111210.png

操作步骤

使用云服务器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.log2016-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_installationSecuring 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用户密码,输入YNew 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) : YBy 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 #是否删除匿名用户,输入YSuccess.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远程登录,输入YSuccess.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 productionenvironment.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 changesmade so far will take effect immediately.Reload privilege tables now? (Press y|Y for Yes, any other key for No) : Y #是否重新加载授权表,输入YSuccess.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 -vPHP 7.0.13 (cli) (built: Nov 10 2016 08:44:18) ( NTS )Copyright (c) 1997-2016 The PHP GroupZend 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 -pEnter password: mysql> CREATE DATABASE magento; #根据实例情况替换magentoQuery OK, 1 row affected (0.00 sec)mysql> GRANT ALL ON magento.* TO YourUser@localhost IDENTIFIED BY 'YourPass'; #根据实际情况替换YourUser和YourPassQuery 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 -pmysql> 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 | phpAll settings correct for using ComposerDownloading 1.2.4...Composer successfully installed to: /root/composer.pharUse 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.0Switched 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安装成功。

微信截图_20180919111257.png

单击 Agree and Setup Magento 开始配置Magento:按实际情况填写连接数据库信息、Web访问设置、定制商店、创建管理员账号。出现如下图所示的界面时,说明Magento配置完成

微信截图_20180919111309.png

步骤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电子商务网站的详细内容,更多请关注创想鸟其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/179720.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
win11声音太小怎么办_解决Win11音量过低和声音增强设置
上一篇 2026年9月2日 07:18:19
9月中国车企在欧销量增长149%!市场份额达7.4%
下一篇 2025年11月1日 17:50:13

相关推荐

  • 云服务器ECS实例上如何安装Nodejs并部署项目

    本篇文章给大家带来的内容是关于云服务器ecs实例上如何安装nodejs并部署项目,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。 部署Node.js项目(CentOS) Node.js 是一个基于 Chrome V8 引擎的 JavaScript 运行环境,用来方便地搭建快速的易于扩…

    2026年9月2日
    000
  • Linux操作系统如何在ECS上搭建Docker

    本文在介绍linux操作系统如何在ecs上搭建docker的基础上,重点探讨了其具体步骤,本文内容很紧凑,希望大家耐心学习。 ECS上搭建Docker(CentOS7) 本文讲述 Docker 在 CentOS 系统上的部署过程。关于 Ubuntu 系统下安装 Docker,具体实践请参考docke…

    2026年9月2日
    000
  • 关于云服务器ECS之间数据传输的实现方式

    本文在介绍关于云服务器ecs之间数据传输的实现方式的基础上,重点探讨了其具体步骤,本文内容很紧凑,希望大家耐心学习。 云服务器ECS之间数据传输的实现方式 简介 在信息化高速发展的今天,服务器每天都会与其它单机交换大量文件数据,文件传输对大家来说是家常便饭。因此,其重要性就不言而喻了。文件传输方式各…

    2026年9月2日
    100
  • 在创建实例时怎么使用自定义脚本来配置自己的 yum 源、NTP 服务和 DNS 服务

    本篇文章给大家带来的内容是关于在创建实例时怎么使用自定义脚本来配置自己的 yum 源、ntp 服务和 dns 服务,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。 自定义 yum 源、NTP 服务和 DNS 服务 实例自定义脚本是阿里云 ECS 为用户提供的一种自定义实例启动行为的脚…

    2026年9月2日
    000
  • 如何使用实例自定义脚本自定义实例的管理员账号

    本篇文章给大家带来的内容是关于如何使用实例自定义脚本自定义实例的管理员账号,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。 自定义实例的管理员账号 实例自定义脚本是阿里云 ECS 为用户提供的一种自定义实例启动行为的脚本,详细信息请参考阿里云线上帮助文档:实例自定义数据。 本文档以 …

    2026年9月2日
    000
  • 安全组中已经添加规则放行SSH端口的访问之后如何使用f1 RTL

    本文在介绍安全组中已经添加规则放行ssh端口的访问之后如何使用f1 rtl的基础上,重点探讨了其具体步骤,本文内容很紧凑,希望大家耐心学习。 使用f1 RTL 本文描述如何使用f1 RTL(Register Transfer Level)。 说明: 本文所述所有操作都必须由同一个账号在同一地域里执行…

    2026年9月2日
    100
  • 如何理解迁云工具和 P2V(Physical to virtual)

    本篇文章给大家带来的内容是关于如何理解迁云工具和 p2v,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。 什么是迁云工具和 P2V 迁云工具专为平衡 ECS 用户的线上线下服务器负载或者各种不同云平台之间的负载而研发。以其轻巧便捷的特点,迁云工具支持在线迁移物理机服务器、虚拟机以及其…

    2026年9月2日
    100
  • 关于基于URL发起HTTP/HTTPS GET的请求结构

    本篇文章给大家带来的内容是关于基于url发起http/https get的请求结构,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。 请求结构 我们支持基于URL发起HTTP/HTTPS GET请求。请求参数需要包含在URL中。 以下为CreateSnapshot一条未编码的URL请求…

    2026年9月2日
    400
  • 如何通过 URL 发送 GET 请求调用云服务器 ECS API

    本篇文章给大家带来的内容是关于如何通过 url 发送 get 请求调用云服务器 ecs api,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。 公共参数 公共参数分为 公共请求参数 和 公共返回参数。 公共请求参数 以下公共请求参数适用于通过 URL 发送 GET 请求调用云服务器 …

    2026年9月2日
    100
  • 接口调用之后如何处理返回结果

    接口调用之后如何处理返回结果接口调用之后如何处理返回结果接口调用之后如何处理返回结果接口调用之后如何处理返回结果

    本文在介绍接口调用之后如何处理返回结果的基础上,重点探讨了其具体步骤,本文内容很紧凑,希望大家耐心学习。 返回结果 返回结果主要有 XML 和 JSON 两种格式,默认为 XML,您可以指定公共请求参数 Format 变更返回结果的格式。更多详情,请参阅 公共参数。为了便于查看和美观,API 文档返…

    2026年9月2日 用户投稿
    100
  • 如何使用访问控制 RAM 授权访问 ECS 实例和API 的鉴权规则

    如何使用访问控制 RAM 授权访问 ECS 实例和API 的鉴权规则如何使用访问控制 RAM 授权访问 ECS 实例和API 的鉴权规则如何使用访问控制 RAM 授权访问 ECS 实例和API 的鉴权规则如何使用访问控制 RAM 授权访问 ECS 实例和API 的鉴权规则

    本篇文章给大家带来的内容是关于如何使用访问控制 ram 授权和访问 ecs 实例,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。 鉴权规则 默认情况下,您能使用 ECS API 完整操作自己创建的 ECS 资源。但子账号刚创建时没有权限操作主账号的资源,或者从其他服务访问 ECS 时…

    2026年9月2日 用户投稿
    200
  • 如何查询一台 ECS 实例的 Web 管理终端 地址

    本篇文章给大家带来的内容是关于如何查询一台 ecs 实例的 web 管理终端 地址,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。 DescribeInstanceVncUrl 查询一台 ECS 实例的 Web 管理终端 地址。 描述 调用该接口时,您需要注意: 管理终端地址的有效期…

    2026年9月2日
    500
  • 怎么以 Base64 编码的方式查询一台 ECS 实例的 自定义数据

    本篇文章给大家带来的内容是关于怎么以 base64 编码的方式查询一台 ecs 实例的 自定义数据,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。 DescribeUserdata 查询一台 ECS 实例的 自定义数据。 描述 返回的实例自定义数据将以 Base64 编码的方式显示。…

    2026年9月2日
    200
  • 如何查询一台或多台预付费实例自动续费状态

    本篇文章给大家带来的内容是关于如何查询一台或多台预付费实例自动续费状态,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。 DescribeInstanceAutoRenewAttribute 查询一台或多台预付费实例自动续费状态。 描述 为了方便您了解自己的实例是否为自动续费状态,本接…

    2026年9月2日
    100
  • 怎么查询一台或者多台 ECS 实例上的已赋予的 实例 RAM 角色

    本文在介绍怎么查询一台或者多台 ecs 实例上的已赋予的 实例 ram 角色的基础上,重点探讨了其具体步骤,本文内容紧凑,希望大家可以有所收获。 DescribeInstanceRamRole 请求参数 返回参数 示例 请求示例 https://ecs.aliyuncs.com/?Action=De…

    2026年9月2日
    100
  • 如何查询抢占式实例近 30 天内的历史价格

    如何查询抢占式实例近 30 天内的历史价格如何查询抢占式实例近 30 天内的历史价格如何查询抢占式实例近 30 天内的历史价格如何查询抢占式实例近 30 天内的历史价格

    本篇文章给大家带来的内容是关于如何查询抢占式实例近 30 天内的历史价格,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。 DescribeSpotPriceHistory 请求参数 返回参数 示例 请求示例 https://ecs.aliyuncs.com/?Action=Descr…

    2026年9月2日 用户投稿
    400
  • 主流电脑操作系统一览

    主流电脑操作系统一览主流电脑操作系统一览主流电脑操作系统一览主流电脑操作系统一览

    提到操作系统,大多数人首先想到的是电脑系统,例如微软的windows xp或windows 7。操作系统(简称os)是用于管理计算机硬件和软件资源的核心程序。当前主流的电脑操作系统包括windows、macos、linux等,各类系统在功能、界面和应用场景上各有特点,广泛应用于个人电脑、服务器及开发…

    2026年9月2日 用户投稿
    300
  • 调整一台按量付费实例的实例规格和公网带宽大小

    调整一台按量付费实例的实例规格和公网带宽大小调整一台按量付费实例的实例规格和公网带宽大小调整一台按量付费实例的实例规格和公网带宽大小调整一台按量付费实例的实例规格和公网带宽大小

    本篇文章给大家带来的内容是关于调整一台按量付费实例的实例规格和公网带宽大小,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。 ModifyInstanceSpec 调整一台按量付费实例的实例规格和公网带宽大小。 描述 调用该接口时,您需要注意: 实例必须处于无欠费状态。 实例状态必须为…

    2026年9月1日 用户投稿
    100
  • 在VS Code中正确配置Docker容器PHP环境

    本文旨在解决在使用VS Code进行Docker化PHP项目开发时,IDE无法识别容器内PHP版本,反而使用本地PHP版本的问题。核心解决方案是利用VS Code的Remote Containers扩展,实现直接在Docker容器内部进行开发,从而确保VS Code的PHP工具链与容器环境保持一致,…

    2026年9月1日
    100
  • 新实例升级或者降低预付费(包年包月)实例规格如何覆盖实例的整个生命周期

    新实例升级或者降低预付费(包年包月)实例规格如何覆盖实例的整个生命周期新实例升级或者降低预付费(包年包月)实例规格如何覆盖实例的整个生命周期新实例升级或者降低预付费(包年包月)实例规格如何覆盖实例的整个生命周期新实例升级或者降低预付费(包年包月)实例规格如何覆盖实例的整个生命周期

    本篇文章给大家带来的内容是关于新实例升级或者降低预付费(包年包月)实例规格如何覆盖实例的整个生命周期,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。 ModifyPrepayInstanceSpec 升级或者降低预付费(包年包月)实例规格,新实例规格将会覆盖实例的整个生命周期。 描述…

    2026年9月1日 用户投稿
    200

发表回复

登录后才能评论
关注微信