源码编译安装nginx和PHP模块

一.编译安装nginx

先关闭防火墙,关闭核心防护
systemctl stop firewalld
setenforce 0

1.1安装nginx所需软件

  版本:nginx-1.15.9.tar.gz

放到opt目录下,ll进行查看
在这里插入图片描述

1.2软件支持

yum -y install pcre-devel zlib-devel

在这里插入图片描述

1.3创建运行用户和组

useradd -M -s /sbin/nologin nginx ##创建一个nginx的用户,不建立宿主文件夹,也禁止登录到shell环境。
在这里插入图片描述

1.4 解压压缩包

tar zxvf nginx-1.15.9.tar.gz

ll看一下,红色显示的解压后的软件包在这里插入图片描述

./configure \

–prefix=/usr/local/nginx
–user=nginx
–group=nginx
–with-http_stub_status_module

在这里插入图片描述

1.5编译及安装

make && make install

在这里插入图片描述

1.6路径优化

ln -s /usr/local/nginx/sbin/nginx /usr/local/sbin/ #表示给sbin目录下的文件创建软链接,为了给主程序nginx创建链接文件,方便管理员直接运行nginx命令就可以调用nginx的主程序。
ls -l /usr/local/sbin/nginx //查看一下

在这里插入图片描述

1.7检查配置文件

nginx -t
在这里插入图片描述

1.8启动,停止nginx

nginx
netstat -anpt | grep nginx

在这里插入图片描述

1.9 访问网页测试

在这里插入图片描述

二.安装配置PHP环境

2.1安装PHP环境依赖包

yum -y install
libjpeg #图片
libjpeg-devel \ #图片
libpng libpng-devel \ # 采用png格式
freetype freetype-devel \ #字体样式
libxml2 \ #xml文件格式
libxml2-devel \ #xml文件格式
zlib zlib-devel \ #支持压缩
curl curl-devel \ #资源定位
openssl openssl-devel #安全套接字

在这里插入图片描述

2.2 编译安装

上传php-7.1.10.tar.bz2包到opt目录下

cd /opt
tar jxvf php-7.1.10.tar.bz2
cd php-7.1.10

./configure
–prefix=/usr/local/php \ #安装路径
–with-mysql-sock=/usr/local/mysql/mysql.sock \ #通讯文件
–with-mysqli \ #连接数据库
–with-zlib \ #终端
–with-curl \ #安装格式
–with-gd \ #处理图片
–with-jpeg-dir \ #调用
–with-png-dir \ #调用
–with-freetype-dir \ #调用
–with-openssl \ #字体格式
–enable-fpm \ #处理动态
–enable-mbstring \ #字符串处理
–enable-xml \ #xml文件格式处理
–enable-session \ #开启会话共享
–enable-ftp \ #开启ftp功能
–enable-pdo \ #连接数据库的驱动
–enable-tokenizer \ #令牌,用于身份验证
–enable-zip #压缩格式

在这里插入图片描述安装结果
在这里插入图片描述

make && make install
在这里插入图片描述

在这里插入图片描述

cp php.ini-development /usr/local/php/lib/php.ini
vi /usr/local/php/lib/php.ini

在这里插入图片描述
在这里插入图片描述

/usr/local/php/bin/php -m #验证安装的模块

在这里插入图片描述

2.3 配置及优化fpm模块

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

cd /usr/local/php/etc/
vi php-fpm.conf

在配置文件里添加:

;pid = run/php-fpm.pid
;user = nginx
;group = nginx

在这里插入图片描述

在这里插入图片描述

/usr/local/php/sbin/php-fpm -c /usr/local/php/etc/php.ini
netstat -anpt | grep 9000
在这里插入图片描述

ln -s /usr/local/php/bin/* /usr/local/bin/
ps aux | grep -c “php-fpm”在这里插入图片描述

2.4 让nginx支持php模块

vi /usr/local/nginx/conf/nginx.conf

这边的注释要去掉!!
在这里插入图片描述

配置文件解析

location ~ .php$ { #识别以php为结尾的文件
# root html; #站点的目录名称
# fastcgi_pass 127.0.0.1:9000; #监听的端口为9000
# fastcgi_index index.php; #识别首页的类型
# fastcgi_param SCRIPT_FILENAME /usr/local/nginx/html$fastcgi_script_name; #识别脚本
# include fastcgi_params; #自己内部定义的变量
#}

vi /usr/local/nginx/html/index.php

里面添加:
在这里插入图片描述
重启nginx
systemctl restart nginx

验证nginx的语法是否正确!

在这里插入图片描述

2.5 网页测试

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/aaa1414124211/article/details/108886834