web服务介绍
Nginx是免费的、开源的、⾼性能的HTTP和反向代理服务器、邮件代理服务器、以及 TCP/UDP代理服务器。模块化设计,较好的扩展性 ⾼可靠性 ⽀持热部署:不停机更新配置⽂件,升级版本,更换⽇志⽂件 低内存消耗:10000个keep-alive连接模式下的⾮活动连接,仅需2.5M内存
优势
1、高性能:Nginx采用异步、非阻塞的事件驱动模型,可以支持高并发请求,并且消耗较少的系统资源。
2、轻量级:Nginx的二进制文件很小,可以快速启动并占用较少的内存。
3、可靠性高:Nginx的代码被设计为高可靠性的,可以在长时间运行中保持稳定性。
4、可扩展性好:Nginx可以通过添加第三方模块或编写自定义模块来扩展其功能。
5、支持热部署:Nginx可以在不停止服务的情况下重新加载配置文件和动态模块
安装环境:
Linux服务器操作系统:Redhat 9.2
nginx-1.24.0 稳定版
安装步骤:
1、安装相关依赖包
[root@nginx ~]# yum -y install gcc gcc-c++ automake pcre pcre-devel zlib zlib-devel openssl openssl-devel
2、下载nginx并解压
我们从nginx官网下载 https://nginx.org/download/nginx-1.24.0.tar.gz
[root@nginx ~]# wget https://nginx.org/download/nginx-1.24.0.tar.gz
--2024-03-12 18:23:51-- https://nginx.org/download/nginx-1.24.0.tar.gz
正在解析主机 nginx.org (nginx.org)... 52.58.199.22, 3.125.197.172, 2a05:d014:5c0:2601::6, ...
正在连接 nginx.org (nginx.org)|52.58.199.22|:443... 已连接。
已发出 HTTP 请求,正在等待回应... 200 OK
长度:1112471 (1.1M) [application/octet-stream]
正在保存至: “nginx-1.24.0.tar.gz”
nginx-1.24.0.tar.gz 100%[==============================================================================================>] 1.06M 1.11MB/s 用时 1.0s
2024-03-12 18:23:55 (1.11 MB/s) - 已保存 “nginx-1.24.0.tar.gz” [1112471/1112471])
[root@nginx ~]#
[root@nginx ~]#
[root@nginx ~]# ls
公共 模板 视频 图片 文档 下载 音乐 桌面 anaconda-ks.cfg nginx-1.24.0.tar.gz
[root@nginx ~]#
[root@nginx ~]#
[root@nginx ~]# tar xvf nginx-1.24.0.tar.gz
省略......
我们进入解压的nginx 文件会看到如下
[root@nginx ~]# ls
公共 模板 视频 图片 文档 下载 音乐 桌面 anaconda-ks.cfg nginx-1.24.0 nginx-1.24.0.tar.gz
[root@nginx ~]#
[root@nginx ~]#
[root@nginx ~]# cd nginx-1.24.0/
[root@nginx nginx-1.24.0]# ll
总用量 816
drwxr-xr-x. 6 1001 1001 4096 3月 12 18:24 auto
-rw-r--r--. 1 1001 1001 323312 4月 11 2023 CHANGES
-rw-r--r--. 1 1001 1001 494234 4月 11 2023 CHANGES.ru
drwxr-xr-x. 2 1001 1001 168 3月 12 18:24 conf
-rwxr-xr-x. 1 1001 1001 2611 4月 11 2023 configure
drwxr-xr-x. 4 1001 1001 72 3月 12 18:24 contrib
drwxr-xr-x. 2 1001 1001 40 3月 12 18:24 html
-rw-r--r--. 1 1001 1001 1397 4月 11 2023 LICENSE
drwxr-xr-x. 2 1001 1001 21 3月 12 18:24 man
-rw-r--r--. 1 1001 1001 49 4月 11 2023 README
drwxr-xr-x. 9 1001 1001 91 3月 12 18:24 src
auto:存放了大量脚本文件,和configure脚本程序有关
conf:存放了Nginx服务器的配置文件,包含了Nginx服务器的基本配置文件和对部分特性的配置文件。
configure:Nginx服务器的自动脚本程序,运行configure自动脚本将会完成两项工作:1、检查环境,根据环境检查结果生成C代码。 2、生成编译代码需要的makefile文件。
html:存放了两个后缀名为.html的静态文件。
man:存放了Nginx服务器的帮助文档,可通过 man nginx进行查看。
src:存放了Nginx服务器的所有源代码
3、源码编译安装
[root@nginx ~]# useradd -s /sbin/nologin nginx //创建nginx用户
[root@nginx ~]# mkdir /www //创建一个新文件夹用于编译后的存储路径
预编译安装
[root@nginx sbin]# systemctl stop firewalld.service
[root@nginx sbin]# setenforce 0
进行预编译
[root@nginx nginx-1.24.0]# ./configure --prefix=/www/ --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 nginx-1.24.0]# make && make install
make -f objs/Makefile
make[1]: 进入目录“/root/nginx-1.24.0”
省略。。。。
4、赋权配置环境变量
[root@nginx nginx-1.24.0]# chown -R nginx.nginx /www/
[root@nginx sbin]# echo "PATH=${PATH}:/www/sbin" >> /etc/bashrc
[root@nginx sbin]# source /etc/bashrc
5、关闭防火墙以及selinux、启动nginx并测试
[root@nginx sbin]# systemctl stop firewalld.service
[root@nginx sbin]# setenforce 0
[root@nginx ~]# cd /www/sbin/
[root@nginx sbin]# ls
nginx
[root@nginx sbin]# nginx //启动nginx
浏览器测试 ip