centos7.2源码安装php7.0.9和nginx1.10.3服务器

下载nginx-1.10.3.tar.gzphp-7.0.9.tar.gz。也可以去nginx官网php官网下载想要的版本。我选择nginx1.10.3稳定版和php7.0.9最新版。php源码包下载速度可能会很慢,建议使用迅雷等工具,下载完成后通过stfp工具把源码包上传到服务器上,为方便测试,我直接放置在root家目录下:

wKiom1jiBh_R2kxZAACPbH_AH4s745.png


使用源码安装要确保服务器安装好gcc(编辑工具)和make(安装工具),若没安装可以执行命令安装:

# yum install gcc
# yum install make


安装ngix之前还需要安装好以下依赖工具:

# yum -y install pcre-devel openssl openssl-devel


解压php、nginx源码包:

# tar xvf php-7.0.9.tar.gz 
# tar xvf nginx-1.10.3.tar.gz


安装nginx,进入解压目录:

wKiom1jiCCzDDgi8AAArngpnYHc061.png


编辑configure文件:

# ./configure --prefix=/usr/local/nginx

wKioL1jiDbDBwTCmAABewdXjrmI288.png


编译结束没有错误以后执行安装:

# make && make install


因为编译安装,并没使用yum,所以没法直接使用nginx命令了。

PS

启动:/usr/local/nginx/sbin/nginx
停止/重新加载:/usr/local/nginx/sbin/nginx -s stop(quit、reload)
验证配置文件是否合法:/usr/local/nginx/sbin/nginx -t
命令帮助:/usr/local/nginx/sbin/nginx -h


添加全局命令,把nginx绝对路径的执行命令通过软链接添加到系统bin目录下:

# ln -s /usr/local/nginx/sbin/nginx /bin/


测试全局命令,任意位置执行nginx命令:

wKiom1jjGTPz_3NhAAAaTOaBs5c396.png


查看是否启动:

# ps -aux | grep nginx

wKiom1jiFCbhnlN-AAAno8ue4a4043.png


浏览器测试,浏览器输入服务器公网ip:

wKioL1jiFDThojYlAABy0UTGR4s749.png





安装php7.0.9:

一并安装php7所需依赖库否则配置时会报错:

# yum -y install php-mcrypt libmcrypt libmcrypt-devel  autoconf  freetype freetype-devel gd jpegsrc libmcrypt libpng libpng-devel libjpeg libjpeg-devel libxml2 libxml2-devel zlib curl curl-devel openssl  openssl-devel libxml2 libxml2-devel readline-devel libedit-devel pcre-devel

wKiom1jh_RTgqHbSAACeMuvYnRI386.png


命令行执行命令,进行安装配置

# ./configure --prefix=/usr/local/php  --enable-bcmath  --enable-mbstring   --enable-mysqlnd  --enable-opcache  --enable-pcntl  --enable-xml  --enable-zip --with-libedit  --with-openssl  --with-zlib  --with-mysqli  --with-pdo-mysql --with-pear --enable-fpm --enable-bcmath  --enable-mbstring   --enable-mysqlnd  --enable-opcache  --enable-pcntl  --enable-xml  --enable-zip  --with-curl  --with-mysqli  --with-pdo-mysql


看到Thank you for use php表示配置成功,可以执行make来进行安装了:

wKioL1jiFvaiq1GFAACEq4KQDNs998.png


安装php7:

# make && make install


安装完毕:

wKioL1jiHczy8r_pAACKruGzSU8345.png


PHP安装是完成了,但是没找到配置文件,因为配置文件 php.ini需要自己从安装包中拷贝过来

wKiom1jiMDGgB1S6AAAl171LQ3U207.png

wKiom1jiMOLCZOUTAAAyo-iZUGI041.png


wKiom1jiMcrT08gZAACwph8HlLs015.png


该把源码包中的php.ini拷贝到哪里呢?执行(# php -ini), Configuration File Path就是php.ini需要存放的位置:

wKiom1jkhfbDDgE5AAAfUodelCM736.png

# cp ~/php-7.0.9/php.ini-production /usr/local/php/lib/php.ini


对应位置复制粘贴创建php-fpm.conf、www.conf文件

wKioL1jiN33iyaMrAAAYcIpwcec333.png


*.conf 是php-fpm的配置文件,没有它启动php-fpm时候会报错

wKiom1jiOTqyOJBdAAAwvY0JmGU562.png


开启php-fpm

# /usr/local/php/sbin/php-fpm &

wKioL1jiQ73BUCpCAAAN3Qphh0Q383.png


如果端口被占用,启动失败wKiom1jiR7aC98tPAAArcEYjoAs449.png


查看占端口应用,杀掉应用

# netstat -ntlp | grep 9000
# killall php-fpm


让nginx支持php扩展:(编辑nginx.conf)

打开这几行代码注释,把红线位置的/scripts改成项目源码存放的位置,根据实际情况,保存退出。

wKioL1jiT_zCCNHDAAAjYN_U0KI115.png


重启nginx服务器:

# /usr/local/nginx/sbin/nginx -s stop


对应目录创建index.php文件测试:

wKioL1jiUOaCdHJdAAAf22BZG_k678.png


浏览器测试:

wKiom1jiUYPg5npfAAFSlUJUAuA308.png

把php、php-fpm局部命令添加到系统全局命令中:

# ln -s /usr/local/php/bin/php /bin/
# ln -s /usr/local/php/sbin/php-fpm /sbin/


测试全局命令php:

wKiom1jjHhzRyj6QAAAWL2qJhuM290.png


测试全局命令php-fpm:

wKioL1jjHhzhaqp4AAAaIrSjpZU451.png


设置nginx、php-fpm开机自动启动,编辑/etc/rc.local文件,添加nginx、php-fpm的启动命令到其中保存即可:

wKioL1jjeebwKT5NAAAshobcdps968.png


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章