参考文章 ####安装之前的准备

  • 1、需要一个编译器(看情况)
sudo yum install gcc-c++
  • 2、php -v 命令查看的php版本不是自己编译的php,就有可能是系统自带的php,然后需要删的话,就是下面的命令
yum remove php-common

####yum安装nginx
**安装之前先来一次 yum update **

  • 1、执行下面命令:
rpm -Uvh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm
  • 2、yum安装
yum install nginx
  • 3、nginx常用命令
查看版本:nginx -v
启动:systemctl start nginx
关闭:systemctl stop nginx
重启:systemctl reload nginx
状态:systemctl status nginx
  • 4、启动并查看(在浏览器输入服务器ip)
systemctl start nginx

####yum安装mysql

  • 1、执行下面命令:
rpm -Uvh http://dev.mysql.com/get/mysql57-community-release-el7-7.noarch.rpm
  • 2、yum安装
yum install mysql-community-server mysql-community-devel
  • 3、启动mysql
systemctl start mysqld
  • 4、查看mysql的默认密码
grep 'temporary password' /var/log/mysqld.log
  • 5、进入mysql修改默认密码
mysql -uroot -p
ALTER USER 'root'@'localhost' IDENTIFIED BY 'Lnmp.cn8';

####编译安装PHP

  • 1、先到php的官网下载一个php版本,我下载的是7.2.7版本的
  • 2、进入到下面的目录,将下载的php压缩包放在里面
cd /usr/local/src
  • 3、解压压缩包(看情况要不要参数z)
tar -zxvf php-7.0.5.tar.gz
  • 4、进入解压后的目录
  • 5、安装之前要先安装那些准备装的扩展要用到的软件模块(需要变更的可以不装)
yum -y install libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel zlib zlib-devel curl curl-devel openssl openssl-devel
  • 6、接下来 configure
./configure --prefix=/usr/local/php7 --enable-fpm --with-fpm-user=nginx --with-fpm-group=nginx --with-mysqli --with-zlib --with-curl --with-gd --with-jpeg-dir --with-png-dir --with-freetype-dir --with-openssl --enable-mbstring --enable-xml --enable-session --enable-ftp --enable-pdo -enable-tokenizer
  • 7、继续执行下面2个命令
make
make install
  • 8、安装完成,下面进行配置
// 先是 PHP 的配置文档
cp php.ini-development /usr/local/php7/lib/php.ini

// 然后根据实际自己需要修改 php.ini
vim /usr/local/php7/lib/php.ini
  • 9、查看php信息
/usr/local/php7/bin/php -v
  • 10、接下来配置 php-fpm,copy php-fpm 的配置文档
cp /usr/local/php7/etc/php-fpm.conf.default /usr/local/php7/etc/php-fpm.conf
cp /usr/local/php7/etc/php-fpm.d/www.conf.default /usr/local/php7/etc/php-fpm.d/www.conf
  • 11、修改 php-fpm.conf(根据情况修改,我的版本编译好之后默认就是,不需要修改)
vim /usr/local/php7/etc/php-fpm.conf

查找 user 将
	user = nobody
	group = nobody
改成
	user = nginx
	group = nginx
  • 12、启动php-fpm
systemctl start php-fpm
systemctl status php-fpm

####配置 Nginx 站点

  • 1、先建立一个 lnmp 站点,路径是 /www/lnmp/web
mkdir -p /www/lnmp/web
  • 2、准备好 phpinfo 测试文件
vim /www/lnmp/web/phpinfo.php
  • 3、输入如下内容保存:
<?php
phpinfo();
  • 4、每个站点建一个 Nginx 配置文件放到 /etc/nginx/conf.d/ 中
cd /etc/nginx/conf.d/
vim lnmp.cn.conf
  • 5、在 lnmp.cn.conf 中加入以下内容然后保存(前面的备注不要)
# 其中 server_name  www.lnmp.cn; 中的 www.lnmp.cn 改成你自己的域名
# 其中 root         /www/lnmp/web; 就是刚才创建的站点目录
# 其中 fastcgi_pass   127.0.0.1:9000; 就是上面配置 php-fpm 提到要留意的值
server {
    listen       80;
    server_name  www.lnmp.cn;
    root         /www/lnmp/web;
    location / {
        index  index.php index.html index.htm;
        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;
    }
}

// 这里是我的laravel配置
server {
    listen       80;
    server_name  l.vbot.admin.com;
    root         /www/lnmp/vbot-admin/public;
    location / {
        index  index.php index.html index.htm;
        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;
    }
    location ~ .*\.(js|css|png|jpg|html)$
    {
      root /www/lnmp/vbot-admin/public;
      if (-f $request_filename) {
         expires 1d;
         break;
      }
    }
}
  • 6、修改配置后一定要记得 reload nginx 才能生效
systemctl reload nginx
  • 7、如果出现nginx 403的情况(我这里出现了)
  • 我这里是参考的这篇文字 点击查看
  • 这里我的解决方案:SELinux设置为开启状态(enabled)的原因。
  • 1、查看当前selinux的状态,如果状态为 enabled,就要禁用
  • /usr/sbin/sestatus
  • 2、将SELINUX=enforcing 修改为 SELINUX=disabled 状态。
  • 编辑文件: vi /etc/selinux/config
  • 将: SELINUX=enforcing 修改成 SELINUX=disabled
  • SELINUX=disabled
  • 重启系统
  • reboot
  • shutdown -r now