CentOS 编译安装 PHP 7 & Nginx & MySql

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

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 版权声明:本文为博主原创文章,转载请附上博文链接!

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 160,108评论 4 364
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 67,699评论 1 296
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 109,812评论 0 244
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 44,236评论 0 213
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 52,583评论 3 288
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,739评论 1 222
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,957评论 2 315
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,704评论 0 204
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,447评论 1 246
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,643评论 2 249
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 32,133评论 1 261
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,486评论 3 256
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 33,151评论 3 238
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,108评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,889评论 0 197
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,782评论 2 277
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,681评论 2 272

推荐阅读更多精彩内容