CentOS 编译安装 PHP 7 & Nginx & MySq

2018-11-21  本文已影响0人  Coder1024

步骤参考了几篇文章,均已写了参考链接。

PHP 7.1.1 Setup

一、Yum源安装

  1. 安装epel-release

rpm -ivh http://dl.fedoraproject.org/pub/epel/7/x86_64/e/epel-release-7-5.noarch.rpm

  1. 安装PHP7的rpm源

rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm

  1. 安装PHP7

yum install php70w

二、编译安装

  1. 下载PHP7.1.1

wget -O php7.tar.gz http://cn2.php.net/get/php-7.1.1.tar.gz/from/this/mirror

  1. 解压php7

tar -xvf php7.tar.gz

  1. 切换进入目录

cd php-7.1.1

  1. 安装依赖包

yum install libxml2 libxml2-devel openssl openssl-devel bzip2 bzip2-devel libcurl libcurl-devel libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel gmp gmp-devel libmcrypt libmcrypt-devel readline readline-devel libxslt libxslt-devel -y

  1. 编译配置(如果出现错误,基本都是上一步的依赖文件没有安装所致,百度错误信息后补上依赖项就行)
./configure \
--prefix=/usr/local/php \
--with-config-file-path=/etc \
--enable-fpm \
--with-fpm-user=nginx \
--with-fpm-group=nginx \
--enable-inline-optimization \
--disable-debug \
--disable-rpath \
--enable-shared \
--enable-soap \
--with-libxml-dir \
--with-xmlrpc \
--with-openssl \
--with-mcrypt \
--with-mhash \
--with-pcre-regex \
--with-sqlite3 \
--with-zlib \
--enable-bcmath \
--with-iconv \
--with-bz2 \
--enable-calendar \
--with-curl \
--with-cdb \
--enable-dom \
--enable-exif \
--enable-fileinfo \
--enable-filter \
--with-pcre-dir \
--enable-ftp \
--with-gd \
--with-openssl-dir \
--with-jpeg-dir \
--with-png-dir \
--with-zlib-dir \
--with-freetype-dir \
--enable-gd-native-ttf \
--enable-gd-jis-conv \
--with-gettext \
--with-gmp \
--with-mhash \
--enable-json \
--enable-mbstring \
--enable-mbregex \
--enable-mbregex-backtrack \
--with-libmbfl \
--with-onig \
--enable-pdo \
--with-mysqli=mysqlnd \
--with-pdo-mysql=mysqlnd \
--with-zlib-dir \
--with-pdo-sqlite \
--with-readline \
--enable-session \
--enable-shmop \
--enable-simplexml \
--enable-sockets \
--enable-sysvmsg \
--enable-sysvsem \
--enable-sysvshm \
--enable-wddx \
--with-libxml-dir \
--with-xsl \
--enable-zip \
--enable-mysqlnd-compression-support \
--with-pear \
--enable-opcache

  1. 正式安装

make && make install

  1. 配置环境变量

vi /etc/profile

执行命令使得改动立即生效

source /etc/profile

  1. 配置php-fpm
cp php.ini-production /etc/php.ini
cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf
cp /usr/local/php/etc/php-fpm.d/www.conf.default /usr/local/php/etc/php-fpm.d/www.conf
cp sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm
chmod +x /etc/init.d/php-fpm


作者:anzhen0429 来源:CSDN 参考原文:https://blog.csdn.net/anzhen0429/article/details/79272893

Nginx Setup

  1. Nginx 这个软件包已经包装在 EPEL 仓库里了,之前我们已经安装了这个仓库,所以可以直接使用包管理工具去安装 Nginx。

yum install nginx -y

  1. 启动

systemctl start nginx

  1. 开机自启动

systemctl enable nginx


参考原文:https://blog.csdn.net/xiao_xiao_meng/article/details/70053828?locationNum=12&fps=1

MySQL Setup

  1. 首先增加MySQL7的源

rpm -Uvh http://repo.mysql.com/mysql57-community-release-el7-7.noarch.rpm

  1. 安装MySQL

yum install mysql-server mysql-devel mysql -y

  1. 启动

systemctl start mysqld

  1. 设置自启动

systemctl enable mysqld

  1. 查看初始化密码

grep 'temporary password' /var/log/mysqld.log

或者直接修改密码

alter user user() identified by "123456";

  1. 设置远程可登录
mysql -uroot -p
use mysql;
update user set host = '%' where user = 'root';
FLUSH PRIVILEGES;

  1. 数据库恢复sql文件过大设置
SHOW GLOBAL VARIABLES LIKE 'max_allowed_packet';
SET GLOBAL max_allowed_packet=1024*1024*400;
FLUSH PRIVILEGES;


参考原文:https://blog.csdn.net/qq_35061546/article/details/79685751

提高Nginx & Php-fpm权限

  1. 建立www用户及www用户组,将www用户同时加入www用户组和root组
adduser www    #建立www用户
groupadd www    #建立www用户组
usermod -G www www    #将www用户加入www用户组同时从其他组移除
usermod -a -G root www    #将www用户加入root用户组,有-a参数不从其他组移除,此时www同时属于www和root组

  1. 将nginx以www用户及www用户组运行,修改nginx.conf文件,在文件头部:
user    www www;    #以www身份运行

  1. 将web目录的拥有者改为www:www,权限改为755
chown www:www web目录 -R    #修改拥有者
chmod 755 web目录 -R    #修改权限

  1. 重载nginx配置
nginx -t    #测试
nginx -s reload    #重载配置

  1. 打开php-fpm的www.conf配置文件并修改:
vim /etc/php-fpm.d/www.conf
#找到user和group改为:
user = www
group = www

#listen也顺便修改了
listen.owner = www
listen.group = www


作者:猫猫无心 来源:CSDN 原文:https://blog.csdn.net/qq_18358973/article/details/81475217 版权声明:本文为博主原创文章,转载请附上博文链接!

上一篇下一篇

猜你喜欢

热点阅读