CentOS 7 搭建 LAMP 环境安装 Magento 2

安装 Apache

yum -y install httpd

验证安装是否成功

httpd -v

如果出现类似下面的信息就是安装好了

Server version: Apache/2.4.6 (CentOS)
Server built: Jul 18 2016 15:30:14

启动 apache

systemctl restart httpd.service

访问网站可以看到 Apache HTTP Server 测试页面 Testing 123...

vi /etc/httpd/conf/httpd.conf

更改为:

<Directory /var/www/html>
AllowOverride All
</Directory>

安装 php 7

CentOS 7

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-mcrypt php70u-gd php70u-devel php70u-mysql php70u-intl php70u-mbstring php70u-bcmath php70u-json php70u-iconv

重启 Apache

systemctl restart httpd.service

验证安装是否成功

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

修改 php.ini

vi /etc/php.ini

修改

date.timezone = "Asia/Shanghai"
memory_limit = 1024M

看起来就只有这一个 php.ini

安装 MySQL

CentOS 7 安装 MySQL 5.7

wget http://dev.mysql.com/get/mysql57-community-release-el7-7.noarch.rpm
yum -y localinstall mysql57-community-release-el7-7.noarch.rpm

安装

yum -y install mysql-community-server
systemctl start mysqld.service

验证是否安装成功

mysql --version

如果出现类似下面的信息即安装成功

mysql Ver 14.14 Distrib 5.7.16, for Linux (x86_64) using EditLine wrapper

取得 root 用户的临时密码

grep 'temporary password' /var/log/mysqld.log

secure the installation

mysql_secure_installation

然后根据提示设置新的密码和配置

登录 MySQL 并创建一个数据库,授权给用户

create database dbname
GRANT ALL ON dbname.* TO user@localhost IDENTIFIED BY 'password';

添加用户

useradd -r -m -s /bin/bash newuser
passwd newuser

查看 apache 所属的用户组

egrep -i '^user|^group' /etc/httpd/conf/httpd.conf

一般他的用户和组都是 apache

把刚刚创建的用户分配给 apache

usermod -g apache newuser

验证下是否分配成功了

groups newuser

如果是下面这样,就是成功了

newuser : apache

重启一下 Apache

systemctl restart httpd.service

搭建 ftp 并上传

yum -y install vsftpd

修改配置

vi /etc/vsftpd/vsftpd.conf

确保下面可用

write_enable=YES
local_umask=002

上传 Magento 2 的文件

安装解压缩软件

yum -y install unzip

以 newuser 的身份解压文件

su newuser
unzip -d dirname Magentoce2.1.2.zip

我将网站的默认根目录改到 newuser 的 home 目录下,这样我可以通过 FTP 直接更改 newuser 的 home 目录,你也可以不这么做。

配置虚拟主机及权限

vi /etc/httpd/conf.d/virtual.conf

然后贴入代码

<VirtlHost *:80>
DocumentRoot /home/newuser/www/html
ServerName xxx.com
<Directory "/home/newuser/www/html">
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all
</Directory>
</VirtualHost>

如果你遇到 403 一定要检查 /home/newuser 及其子目录的的权限,确保用户组有足够的权限。

最后更改其他权限

cd <your Magento install dir>
find var vendor pub/static pub/media app/etc -type f -exec chmod g+w {} \;
find var vendor pub/static pub/media app/etc -type d -exec chmod g+ws {} \;
chown -R :<web server group> .
chmod u+x bin/magento

连续命令的方式(功能同上)

cd /home/newuser/www/html && sudo find var vendor pub/static pub/media app/etc -type f -exec chmod g+w {} \; && sudo find var vendor pub/static pub/media app/etc -type d -exec chmod g+ws {} \; && sudo chown -R :apache . && sudo chmod u+x bin/magento

打开网站,下一步下一步就 OK 了。

参考地址

Prerequisites

2 comments

  1. dreamsong

    yum -y install php70u php70u-pdo php70u-mysqlnd php70u-opcache php70u-xml php70u-mcrypt php70u-gd php70u-devel php70u-mysql php70u-intl php70u-mbstring php70u-bcmath php70u-json php70u-iconv

    这里有问题

    1. Pisces Post author

      感谢你的评论!刚刚检查了下,没有问题呢。

发表评论

电子邮件地址不会被公开。 必填项已用*标注