Nginx的学习实验与总结

Nginx 介绍
Nginx engine X 2002 年开发,分为社区版和商业版 (nginx plus )
2019 3 11 F5 Networks 6.7 亿美元的价格收购
Nginx 是免费的、开源的、高性能的 HTTP 和反向代理服务器、邮件代理服务器、以及 TCP/UDP 代理服务器
(以下实验所有需要的压缩包)
编译安装Nginx介绍说明
首先下载压缩包,可以从官网下载
把它放到/usr/local/nginx下,然后解压(zxvf,写错了图上
下载所需的依赖包,后面编译会需要用到
添加一个nginx用户
添加参数
显示这个就是指定设置完成
执行make && make install,开始编译
编译完成
添加全局参数
编写nginx启动文件
平滑升级回滚
解压1.26版本的nginx,为后续平滑升级做准备
同时解压echo这个插件
指定参数然后编译,make一下就好
编译完后查看两个版本
备份这个命令
把命令复制过去
检查一下有没有问题
查看一下端口占用,pidof nginx是查看nginx的pid
杀掉然后回收
查看,发现是1.26生效,正确
平滑升级成功
全局配置及参数优化
子配置文件目录
实现nginx的高并发
修改 /etc/security/limits.conf下的配置
修改nginx的主配置文件
nginx的http配置模块
重新加载并测试
location的用法
location [ = | ~ | ~* | ^~ ] uri { ... }
= # 用于标准 uri 前,需要请求字串与 uri 精确匹配,大小敏感 , 如果匹配成功就停止向下匹配并立
即处理请求
^~ # 用于标准 uri 前,表示包含正则表达式 , 并且匹配以指定的正则表达式开头
# uri 的最左边部分做匹配检查,不区分字符大小写
~ # 用于标准 uri 前,表示包含正则表达式 , 并且区分大小写
~* # 用于标准 uri 前,表示包含正则表达式 , 并且不区分大写
不带符号 # 匹配起始于此 uri 的所有的 uri
\ # 用于标准 uri 前,表示包含正则表达式并且转义字符。可以将 . * ? 等转义为普通符号
Nginx的反向代理功能
接下来的实验要用到memcache,所以要讲nginx添加几个模块后重新编译,这里就不做演示了,我直接把需要的压缩包和编译命令放出来
#利用yum解决php依赖
[root@Nginx ~]# yum install -y bzip2 systemd-devel libxml2-devel sqlite-devel
libpng-devel libcurl-devel oniguruma-devel
#解压源码并安装
[root@Nginx ~]# ./configure \
--prefix=/usr/local/php \ #安装路径
--with-config-file-path=/usr/local/php/etc \ #指定配置路径
--enable-fpm \ #用cgi方式启动程序
--with-fpm-user=nginx \ #指定运行用户身份
--with-fpm-group=nginx \
--with-curl \ #打开curl浏览器支持
--with-iconv \ #启用iconv函数,转换字符编码
--with-mhash \ #mhash加密方式扩展库
--with-zlib \ #支持zlib库,用于压缩http压缩传输
--with-openssl \ #支持ssl加密
--enable-mysqlnd \ #mysql数据库
--with-mysqli \
--with-pdo-mysql \
--disable-debug \ #关闭debug功能
--enable-sockets \ #支持套接字访问
--enable-soap \ #支持soap扩展协议
--enable-xml \ #支持xml
--enable-ftp \ #支持ftp
--enable-gd \ #支持gd库
--enable-exif \ #支持图片元数据
--enable-mbstring \ #支持多字节字符串
--enable-bcmath \ #打开图片大小调整,用到zabbix监控的时候用到了这个模块
--with-fpm-systemd #支持systemctl 管理cgi

编译完成后环境就准备好了可以进行下面的实验

创建一个新的子配置文件,进行php的配置编写

php的子配置文件编写
重启所有服务已保障配置生效
测试访问index.php页面
测试example打标签,和打中情况
查看性能
再次查看对比一下可以发现装载了 memcache功能的性能和命中次数有了很大的提升
(拓展,二次开发版本)实际上也就是nginx,只是东西变了点
(安装使用前请先关闭nginx服务)
[root@Nginx ~]#dnf -yq install gcc pcre-devel openssl-devel perl
[root@Nginx ~]#useradd -r -s /sbin/nologin nginx
[root@Nginx ~]#cd /usr/local/src
[root@Nginx src]#wget https://openresty.org/download/openresty-1.17.8.2.tar.gz
[root@Nginx src]#tar xf openresty-1.17.8.2.tar.gz
[root@Nginx src]#cd openresty-1.17.8.2/
[root@Nginx openresty-1.17.8.2]#./configure \
--prefix=/apps/openresty \
--user=nginx --group=nginx \
--with-http_ssl_module \
--with-http_v2_module \
--with_http_realip_module \
--with-http_stub_status_module \
--with-http_gzip_static_module
--with-pcre --with-stream \
--with-stream_ssl_module \
--with-stream_realip_module
[root@Nginx openresty-1.17.8.2]#make && make install
[root@Nginx openresty-1.17.8.2]#ln -s /apps/openresty/bin/* /usr/bin/
[root@Nginx openresty-1.17.8.2]#openresty -v
nginx version: openresty/1.17.8.2
[root@Nginx openresty-1.17.8.2]#openresty
[root@Nginx openresty-1.17.8.2]#ps -ef |grep nginx
[root@Nginx ~]#curl 10.0.0.18

和安装编译nginx一样的流程

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值