环境搭建(Nginx + PHP7 + Mysql + 运行ThinkPHP5项目)

Posted skate0rdie

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了环境搭建(Nginx + PHP7 + Mysql + 运行ThinkPHP5项目)相关的知识,希望对你有一定的参考价值。

 

 

一、《 安装Nginx》(原文链接)


 

  1 安装gcc

yum -y install gcc-c++

 

 

 

  2 安装nginx

    2.1 安装pcre-devel、gzip、openssl

yum -y install pcre-devel
yum -y install zlib-devel
yum -y install openssl-devel

 

 

 

    2.2 下载nginx、解压、进入目录

 

wget http://nginx.org/download/nginx-1.12.1.tar.gz
tar zxvf nginx-1.12.1.tar.gz
cd nginx-1.12.1

 

 

 

    2.3 编译安装

 

./configure
make&&install

 

    2.4 默认安装目录、启动、检查启动状态

// 默认安装路径: /usr/local/nginx

// 启动nginx 命令:
/usr/local/nginx/sbin/nginx

// 查看nginx是否启动
ps -ef|grep nginx

 

技术图片

 

 

 

 

 

<完>

 

 

二、《安装PHP》(原文链接)

 


 

 

  c

  1. 下载、解压、进入目录

wget -O php-7.1.9.tar.gz http://am1.php.net/get/php-7.1.9.tar.gz/from/this/mirror

tar zxvf php-7.1.9.tar.gz

cd php-7.1.9

 

 

  2. 安装依赖包

yum -y install libxml2 libxml2-devel openssl openssl-devel curl-devel libjpeg-devel libpng-devel freetype-devel libmcrypt-devel libxslt libxslt-devel


[注] 若该过程中提示无法安装libmcrypt扩展,可以使用以下方法
  sudo yum install php-mcrypt

  sudo yum install libmcrypt
  sudo yum install libmcrypt-devel

  3. 配置、编译安装

./configure --prefix=/usr/local/php

make && make install

  4. 配置环境变量

vim /etc/profile

// 在该文件末尾加入:

PATH=$PATH:/usr/local/php/bin
export PATH

// 保存之后执行:

source /etc/profile

 

  5. 查看PHP版本信息

php -v

 

 

技术图片

 

 

 

 

 

<完>

 

 

三、 《配置Nginx 支持 PHP-FPM》(原文链接)

 

  1. 添加用户、组

groupadd www-data
useradd -g www-data www-data

 

  2. 复制php-fpm配置文件、找到php-fpm.d 目录

cd /usr/local/php/etc
cp php-fpm.conf.default php-fpm.conf

// 打开配置文件,可以在最后一行 看到 php-fpm.d 目录位置
vim php-fpm.conf

 

  3. 进入php-fpm.d目录 复制默认配置文件并修改

cd php-fpm.d
cp www.conf.default  www.conf
vim www.conf

//
user = www
group = www
// 改为
user = www-data
group = www-data

 

  4. 重启php-fpm服务,查看状态

/usr/local/php/sbin/php-fpm
netstat -lnt | grep 9000

 

技术图片

 

 

 

  5. 打开Nginx配置文件

vim /usr/local/nginx/conf/nginx.conf

 

  6. 修改用户组

// 第一行注释去掉 nobody改为www-data

 

  7. 添加index.php

技术图片

 

 

 

  8. 配置php-fpm模块

    需要修改红色框体内内容:

技术图片

 

 

 

  9. 保存退出,检查是否正确

/usr/local/nginx/sbin/nginx -t

 

技术图片

 

 

 

  10. 重启Nginx

/usr/local/nginx/sbin/nginx -s reload

 

  11. 检查能否解析PHP文件

//  可以在你的根目录中放一个 index.php, 文件内容为:
<?php echo phpinfo();
// 在浏览器中, 通过访问  "服务器IP/index.php"   即可看到phpinfo页面

 

 

 

 

<完>

 

 

 

 

四、《安装Mysql》(原文链接)

 

 


  c

  1. 添加用户、组

groupadd mysql
useradd -r -g mysql mysql

 

  2. 创建数据保存文件

// 在根目录 创建   /data/mysql/  两个文件目录

 

  3. 下载、解压、移动并重命名

// 下载
wget http://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.17-linux-glibc2.5-x86_64.tar.gz
// 解压
tar -xzvf /data/software/mysql-5.7.17-linux-glibc2.5-x86_64.tar.gz
// 移动、重命名
mv mysql-5.7.17-linux-glibc2.5-x86_64 /usr/local/mysql

 

  4. 修改目录权限

cd /usr/local/mysql
chown -R mysql .
chgrp -R mysql .
chown -R mysql /data/mysql

 

  5. 配置参数并获取登录密码

// 找到 myqld
./mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/data/mysql

 

技术图片

 

 

 

// 最后一部分 为  数据库登录密码,  需保存下来,后面会用

 

// 找到mysql_ssl_rsa_setup 继续执行:
./mysql_ssl_rsa_setup  --datadir=/data/mysql

 

  6. 修改系统配置文件

cd /usr/local/mysql/support-files
cp my-default.cnf /etc/my.cnf
cp mysql.server /etc/init.d/mysql
vim /etc/init.d/mysql

// 修改以下内容:
basedir=/usr/local/mysql
datadir=/data/mysql

 

  7. 登录mysql

// 启动mysql
/etc/init.d/mysql start
// 登录
mysql -hlocalhost -uroot -p
// 输入之前保存的密码
// 修改密码为root
mysql> set password=password(‘root‘);
// 设置host地址
mysql> grant all privileges on *.* to ‘root‘@‘%‘ identified by ‘root‘;
mysql> flush privileges;

// 之后, 可以使用 Navicat 进行远程连接测试

 

  8. 远程连接测试

  9. 添加系统路径

vim /etc/profile
// 末尾添加:
export PATH=/usr/local/mysql/bin:$PATH

 

  10. 配置自启动

chmod 755 /etc/init.d/mysql
chkconfig --add mysql
chkconfig --level 345 mysql on

 

 

 

 

 

<完>

 

 

 

 

 

五、《ThinkPHP5项目运行遇到的问题》

 


 

  1.linux中找不到php.ini 问题

 

    解决方法:在php编译目录,找一个php.ini-development或者php.ini-production复制到/usr/local/php/etc那个目录,并重命名为php.ini

  

  

  2.项目根目录由 /public 转移到 / 下

 


 

      c 

 

      c

 

  3.环境部署后,访问 www.mysite.com/admin  出现404问题 (原文链接)

 


 

       

      修改Nginx配置文件:

  

       技术图片

         技术图片

 

 

 

<完>

 

 

 

 

 

  4.could not find driver 问题 (原文链接)


 

 

 

    1.原因:没有安装pdo_mysql 驱动

 

    2.解决方法:

      (1)。 在PHP压缩包解压出来的文件中找到pdo_mysql文件,并进入

// 在pdo_mysql 文件内部执行:
/usr/local/php/bin/phpize

 

若遇到报错:

技术图片

 

 

 

// 则执行:
yum install m4
yum install autoconf

 

      (2)配置、编译安装

./configure –with-php-config=/usr/local/php/bin/php-config –with-pdo-mysql=/usr/local/mysql/

make&&make install

 

        编译安装后, 会看到:(pdo_mysql.so 在该目录下)

技术图片

 

           打印phpinfo()看一下extension_dir路径,有没有指向上面的路径

        如果没有, 则在php.ini中添加:

技术图片

 

 

技术图片

 

 

 

      (3)检查有无安装成功

/usr/local/php/bin/php -m

技术图片

 

 

        (4)重启php-fpm、 Nginx

killall php-fpm
/usr/local/php/sbin/php-fpm &
/usr/local/nginx/sbin/nginx -s reload

 

 

 

 

<完>

 

以上是关于环境搭建(Nginx + PHP7 + Mysql + 运行ThinkPHP5项目)的主要内容,如果未能解决你的问题,请参考以下文章

windows10-nginx-mysql8.0-php7.0环境搭建

LNMP环境搭建(centos6.9+mysql5.7+php7.1+nginx1.9)

Ubuntu 18.04.1 下快速搭建 LNMP环境(PHP7.2.5+MySql5.7+Nginx1.14.0)

搭建LNMP环境 (centos7+nginx+MySQL5.7.9+PHP7)

centos7.2+php7.0.10+mysql5.7.14+nginx1.10.1搭建LNMP环境

Centos7 搭建lnmp环境 (centos7+nginx+MySQL5.7.9+PHP7)