配置生阿里云 LEMP 产环境(二)


alibaba-cloud-logo

配置生产环境

配置网站目录

首先需要在 ECS 实例上创建我们网站的根目录,使用 mkdir -p 命令进行,比如我网站的根目录路径为 /public_html/iiryan.com

mkdir -p /public_html/iiryan.com

完成后,可以目录下新建一个 phpinfo.php 的文件,以方便我们后续测试,文件内容为:

<?php phpinfo(); ?>

配置 Nginx

在 Nginx 的配置目录 /etc/nginx/conf.d 下,新建一个名为 default.conf 的配置文件,文件内容为:

server {
        listen          80;
        server_name     iiiryan.com;
        root            /public_html/iiryan.com;
        index           index index.html index.php;

        location / {
                 try_files $uri $uri/ /index.php?$query_string;
        }
        location ~ \.php$ {
                fastcgi_pass 127.0.0.1:9000;
                fastcgi_index index.php;
                fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
                include fastcgi_params;
        }       
}

上面配置信息中,服务器地址、文件目录可以根据实际情况自己设置。完成后重新加载 Nginx:

systemctl reload nginx

因为,之前已经建了一个 phpinfo.php 的文件,我们可以在浏览器中打开:http://iiiryan.com/phpinfo.php ,如果能够正常打开 PHP 的信息页面,就说明配置成功了。

修改运行权限

修改 php-fpm 的运行用户使其与 nginx 服务器的运行用户保持一致:

vi /etc/php-fpm.d/www.conf

修改其中的信息为:

user = nginx
group = nginx

可以使用 ps aux | grep nginx 命令来查看 nginx 的运行用户。

重启 PHP-FPM 让配置生效。

我们还要修改 session 的目录权限,将将目录的拥有者也修改为 nginx

chown -R nginx:nginx /var/lib/php/fpm

为保证网站运行时不会出现运行权限的问题,可以将 php-fpmnginx 的运行用户修改为常用的服务器用户。(这里使用之前新增的用户:test)

首先,修改php-fpm 的运行用户:

vi /etc/php-fpm.d/www.conf

修改其中的信息为:

user = test
group = test

然后修改 nginx 的运行用户:

vi /etc/nginx/nginx.conf

修改其中的信息:user nginx;user test;

还要修改 session 的目录权限,将将目录的拥有者也修改为 test

chown -R test:test /var/lib/php/fpm

修改 php-fmpnginx 错误日志的运行用户:

chown -R test:test /var/log/php-fpm
chown -R test:test /var/log/nginx

最后还要修改 /var/lib/nginx 这个目录的运行用户:

chown -R test:test /var/lib/nginx

当然,网站主目录的运行用户也必须保持一致:

chown -R test:test /public_html/iiryan.com

修改完成后,重启 php-fpm 和 nginx 生效。

安装常用工具

unzip

解压 zip 格式的压缩文件,需要用到 unzip。

安装:

sudo yum install unzip

Git

项目版本管理工具,执行以下命令安装:

sudo yum install git2u

WP-CLI

安装 WordPress 的命令行工具 WP-CLI(官方网站:http://wp-cli.org),可以使用命令行管理 WordPress:

curl -O https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar

完成后给 wp-cli.phar 添加可执行权限:

chmod +x wp-cli.phar

wp-cli.phar 移动到系统的环境变量目录里,并将名字修改为 wp

sudo mv wp-cli.phar /usr/local/bin/wp

安装配置 phpMyAdmin

安装 phpMyAdmin

下载 phpMyAdmin:

curl -O https://files.phpmyadmin.net/phpMyAdmin/4.7.3/phpMyAdmin-4.7.3-all-languages.zip

使用 unzip 命令解压刚下载的 zip 文件:

unzip phpMyAdmin*.zip

解压完成之后,使用 rm -rf phpMyAdmin*.zip 命令删除 zip 安装包。

将 phpMyAdmin 移动到网站根目录下,并修改名称为 phpMyAdmin

mv phpMyAdmin* /public_html/iiryan.com/phpMyAdmin

完成后,在浏览器中输入链接:http://iiiryan.com/phpMyAdmin/,就能看到 phpMyAdmin 的登录页面了。

phpMyAdmin 安全配置

复制 phpMyAdmin 的安装目录下的 config.sample.inc.php 文件并命名为 config.inc.php

cp config.sample.inc.php config.inc.php

编辑文件 config.inc.php ,在文件中 $cfg['blowfish_secret'] = 添加一个短语密码(可以使用 openssl 自动生成一个随机密码)。

为了安全起见,我们可以给 phpMyAdmin 页面增加一个身份验证页面。首先在 Nginx 的配置文件目录,创建一个密码文件 pma_pass

sudo vi /etc/nginx/conf.d/pma_pass

文件中保存有使用 crypt() 加密的用户名与密码(可以使用 openssl passwd 生成),使用:username:password 的形式。

完成后,还需要对之前的服务器配置文件中,添加一个 location 区块去匹配 phpMyAdmin 这个目录:

 location /phpMyAdmin {
    auth_basic "Login Please";
    auth_basic_user_file /etc/nginx/conf.d/pma_pass;
  }

完成后,再查看 phpMyAdmin 登陆页面时浏览器就会提示需要验证密码了!

至此,阿里云 ECS 的 LEMP 生产环境就搭建完成了!

#EOF