Centos7下搭建LEMP环境简明笔记

设置环境变量常见的地方为区分开发环境/生产环境,或者定义一些数据库的帐号密码

ssh登陆你的服务器

ssh 用户@主机

设置Apache环境变量

创建用户,密码,加入wheel用户组

useradd newuser
passwd newuser
sudo gpasswd -a newuser wheel

返回:

Adding user newuser to group wheel

查看用户所属群组:

groups newuser

返回:

newuser : newuser wheel

登陆

su newuser

这样newuser就可以使用sudo命令了。

指令

设置当前环境变量为DEV

SetEnv RUNTIME_ENVIROMENT DEV

数据库帐号密码

SetEnv MYSQL_USERNAME root
SetEnv MYSQL_PASSWORD root

添加yum仓库

去安装 ius 仓库,它提供了不同的版本,我们需要安装适合用在 centos 7
上的仓库 ..

sudo yum install https://centos7.iuscommunity.org/ius-release.rpm -y

查看一下仓库的列表 ..

yum repolist

你会看到刚才安装的 ius 这个仓库 .. 因它这个仓库会依赖 epel-release
仓库,所以安装它的时候也会自动去安装这个 epel 仓库 ..

配置文件格式

<VirtualHost *:80>
    ServerAdmin admin@admin.com
    DocumentRoot "/var/www/"
    ServerName localhost
    SetEnv RUNTIME_ENVIROMENT DEV
    SetEnv MYSQL_USERNAME root
    SetEnv MYSQL_PASSWORD root
    ErrorLog "logs/error.log"
    CustomLog "logs/access.log" common
</VirtualHost>

安装NGINX

sudo yum install nginx -y

完成以后启动一下这个服务 ..

sudo systemctl start nginx

再让它可以开机自启动 ..

sudo systemctl enable nginx

下面我们可以测试一下看看 .. 打开浏览器 .. 直接输入服务器的 ip 地址 ..
你应该会看到一个 NGINX 的欢迎页面 .. 说明现在已经成功的安装了 NGINX ..
如果不能看到,需要防火墙打开80端口

sudo iptables -A INPUT -p tcp --dport 80 -j ACCEPT

澳门新葡亰网址,设置Nginx环境变量

安装MariaDB

先删除Centos7自带的MariaDB

sudo yum remove mariadb-libs -y

然后搜索一下最新的包

sudo yum search mariadb

安装

sudo yum install mariadb101u-server -y

开启

sudo systemctl start mariadb

然后让它可以开机自启动

sudo systemctl enable mariadb

再执行一下安全相关的配置

mysql_secure_installation

这里要让我们回答一些问题 ..

输入当前 root 用户的密码, 直接回车 . 要设置 root 密码吗? 是的 …
再确认一次 … 是否要删除匿名用户吗? 是的 , 想要禁用 root
用户远程登录吗? 可以 ,要删除掉 test 这个数据库吗? 确定
,最后会提示,要重新加载权限吗? 再输入一个 Y,表示确定 …

这样我们就完成了 MariaDB 这个数据库的安装还有配置 … 可以测试一下 …

mysql -u root -p

意思是使用 root 用户登录到数据库的控制台, 输入密码 .. 注意这个 root
是数据库管理系统的那个 root 用户 …

这样会登录到数据库的控制台 … 显示数据库系统里所有的数据库 ,可以使用

show databases;

指令

设置当前环境变量为DEV

fastcgi_param RUNTIME_ENVIROMENT 'DEV'

数据库帐号密码

fastcgi_param MYSQL_USERNAME 'root'
fastcgi_param MYSQL_PASSWORD 'root'

安装PHP-FPM

PHP-FPM,它可以把解释好的 PHP 交给 NGINX 服务器

sudo yum search php

先搜索一下 .. 这里会有一些 php72u 开头的包, 72表示 7.2 的 PHP .. 它们是
ius 仓库提供的包 ..

sudo yum install php72u-fpm -y

完成以后启动一下这个服务 ..

sudo systemctl start php-fpm

再让它可以开机自启动 ..

sudo systemctl enable php-fpm

另外还有一些常用的 php 扩展我们也可以再去安装一下 .. gd
提供了处理图像的功能 .. mysqlnd 还有 pdo 是跟数据库有关的扩展 .. mcrypt
是加密用的 .. mbstring 是处理多字节字符的扩展 .. 再加上一个 json ..
它可以处理 json 格式的数据 ..

sudo yum install php72u-gd php72u-mysqlnd php72u-pdo php72u-mcrypt php72u-mbstring php72u-json -y

完成以后我们可以重新加载一下 php-fpm ..

sudo systemctl reload php-fpm

配置文件格式

在fastcgi_params文件中配置

fastcgi_param RUNTIME_ENVIROMENT 'DEV';
fastcgi_param MYSQL_USERNAME 'root';
fastcgi_param MYSQL_PASSWORD 'root';

在nginx.conf中配置

server {
    listen   80; 
    root /var/www;
    index index.php;
    server_name localhost;
    location /
    {   
         index index.php;
    }   

    location ~ .*.(php|php5)?$ {
        fastcgi_pass 127.0.0.1:9000;
        fastcgi_index index.php;
        include fastcgi_params;
    }   
}

NGINX 配置

下面创建一个基本的可以运行 php 应用的 NGINX 配置文件,把它放到
/etc/nginx/conf.d 这个目录的下面吗,名字可以是 php.basic.conf

sudo vi /etc/nginx/conf.d/php.basic.conf

server {
  listen        80;
  server_name   IPADDRESS DOMAIN;
  root          /home/www/default;
  index         index.php index.html;

  location / {
    try_files $uri $uri/ /index.php?$query_string;
  }

  location ~ .php$ {
    fastcgi_pass 127.0.0.1:9000;
    fastcgi_index index.php;
    include fastcgi.conf;
  }
}

先添加一个 server 区块 .. 然后用一个 listen 指令设置一下监听的端口号 ..
另起一行 .. 再用一个 server_name , 先用一下服务器的 ip 地址 ..
,因为我们还没有特别想要使用的主机名 ..

再用 root 指令设置一下这个网站应用的根目录 .. 比如放在 /home/www/default
这个目录的下面 ..

index 指定可以设置一些默认打开的文件 .. 再这个 server 区块里,再定义一个
location 区块 ..

里面添加一行指令 try_files $uri $uri/ /index.php?$query_string;
它可以实现网站的地址重写功能 ..

然后我们需要让这个网站应用可以处理 php 脚本 … 再添加一个 location
,它匹配的是对 php 文件的请求 ..

在它里面再添加几行指令 .. 主要就是告诉 NGINX 怎么样处理 PHP 脚本 。

fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
include fastcgi.conf;

完成以后保存一下这个配置文件 .. 再去创建需要的目录 .. sudo mkdir -p
/home/www/default

修改一下目录的拥有者,把拥有者改成当前登录的用户

sudo chown -R newuser /home

在创建的这个 default 目录的下面再去添加一个 php 文件

vi /home/www/default/phpinfo.php 

在这个文件里用一个 phpinfo() 函数

<?php phpinfo();?>

保存一下 ,然后重新加载一下 NGINX

sudo systemctl reload nginx 

在浏览器里直接打开服务器的 IP 地址 ,后面加上 phpinfo.php ,会显示 PHP
相关的信息

http://IPADDRESS/phpinfo.php

说明已经可以处理 PHP 脚本了
到这里为止一个LEMP环境就搭建好了。

发表评论

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

相关文章

网站地图xml地图