高性能企业WEB服务器

一:nginx的编译安装:

1.1官方源下载地址:

https://nginx.org/en/download.html

1.1.1下载编译所需要的软件:

[root@nginx nginx-1.24.0]# dnf install gcc pcre-devel zlib-devel openssl-devel -y

编译:

验证版本及编译参数:

如果要删除编译文件则执行:

关闭debug功能:

[root@nginx nginx-1.24.0]# vim auto/cc/gcc
 

测试:

1.2:nginx的平滑升级以及版本回滚:(保证旧版本继续运行新版本后台更新)

首先准备好nginx1.24和1.26的压缩包并进行解压

编译: 

[root@nginx nginx-1.26.1]# make

如果环境有问题执行:

1.3:NGINX的脚本启动文件:

[root@nginx ~]# vim /lib/systemd/system/nginx.service

打开主配置文件去掉注释pid:

[root@nginx ~]# vim /usr/local/nginx/conf/nginx.conf

进行加载:

测试效果:

 二:NGINX全局配置:

新建一个pc web站点:

[root@nginx ~]# vim /usr/local/nginx/conf/nginx.conf

[root@nginx ~]# mkdir /usr/local/nginx/conf.d/  新建一个子文件

[root@nginx ~]# vim /usr/local/nginx/conf.d/vhost.conf

测试:

root和alias:

[root@nginx ~]# vim /usr/local/nginx/conf.d/vhost.conf

重启服务:

测试:

location的详细使用:

N

NGINX的账户认证功能:

非交互建立用户认证:

测试:

自定义错误页面:

测试:

 三:NGINX高级配置:

NGINX变量使用

四:NGINX Rewrite :

rewrite案例:自动跳转https:

制作证书:

五:NGINX反向代理: 

反向代理: reverse proxy ,指的是代理外网用户的请求到内部的指定的服务器,并将数据返回给用户的
一种方式,这是用的比较多的一种方式。
Nginx 除了可以在企业提供高性能的 web 服务之外,另外还可以将 nginx 本身不具备的请求通过某种预
定义的协议转发至其它服务器处理,不同的协议就是 Nginx 服务器与其他服务器进行通信的一种规范,主
要在不同的场景使用以下模块实现不同的功能

 

fastcgi实战案例:

[root@nginx ~]# yum install -y bzip2 systemd-devel libxml2-devel sqlite-devel
libpng-devel libcurl-devel 
 
[root@nginx ~]#dnf install oniguruma-devel-6.9.6-1.el9.5.x86_64.rpm

 [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

[root@Nginx ~]# cd /usr/local/php/etc
[root@Nginx etc]# cp php-fpm.conf.default php-fpm.conf
[root@Nginx etc]# vim php-fpm.conf
去掉注释
pid = run/php-fpm.pid # 指定 pid 文件存放位置
[root@Nginx etc]# cd php-fpm.d/
[root@Nginx php-fpm.d]# cp www.conf.default www.conf
# 生成主配置文件
[root@Nginx php-fpm.d]# cd /root/php-8.3.9/
[root@Nginx php-8.3.9]# cp php.ini-production /usr/local/php/etc/php.ini
[root@Nginx ~]# vim /usr/local/php/etc/php.ini
[Date]
; Defines the default timezone used by the date functions
; https://php.net/date.timezone
date.timezone = Asia/Shanghai # 修改时区
# 生成启动文件
[root@Nginx ~]# cd /root/php-8.3.9/
[root@Nginx php-8.3.9]# cp sapi/fpm/php-fpm.service /lib/systemd/system/
# Mounts the /usr, /boot, and /etc directories read-only for processes invoked by
this unit.
#ProtectSystem=full # 注释该内容
测试:

php高速缓存:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值