美文网首页
Centos7下搭建LEMP环境简明笔记

Centos7下搭建LEMP环境简明笔记

作者: 伍冲虚 | 来源:发表于2018-03-28 15:11 被阅读0次

    ssh登陆你的服务器

    ssh 用户@主机
    

    创建用户,密码,加入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命令了。

    添加yum仓库

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

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

    查看一下仓库的列表 ..

    yum repolist
    

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

    安装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
    

    安装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;
    

    安装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
    

    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环境就搭建好了。

    相关文章

      网友评论

          本文标题:Centos7下搭建LEMP环境简明笔记

          本文链接:https://www.haomeiwen.com/subject/qomofftx.html