nginx

2023-12-13 21:06:07

目录

一、nginx与apache的区别

二、nginx优点

三、nginx应用场景

四、nginx安装

1、官网下载安装包

2、把下载下来的安装包传到Linux系统中,并解压

3、关闭防火墙和安全机制

4、安装nginx依赖环境

5、创建运行用户、组

6、开始配置

7、编译并安装

8、建立软连接

9、检查、启动、重载、停止 nginx服务

10、使用systemd管理nginx

五、nginx版本的平滑升级

1、官网下载新版本安装包

2、把下载下来的安装包传到Linux系统中,并解压

3、开始配置

4、make 编译

5、改名旧版本nginx可执行文件

6、复制二进制文件

7、升级

六、nginx应用配置文件

1、增加nginx并发量

①先设置nginx配置文件

②再在Linux系统中设置最大打开文件数

2、设置长连接

3、网页跳转

4、web服务监听配置

5、访问状态统计配置

6、访问控制(账号密码)

7、限制客户端的访问控制


一、nginx与apache的区别

nginx:轻量级,占用系统资源少,高性能抗并发,请求是异步非阻塞的,不会为每隔请求分配CPU和内存资源,多个连接可以对应一个进程,高度模块化设计,处理模式相对简单

apache:采用阻塞+多进程/多线程的方式处理请求,更稳定,bug少,模块更丰富,一个连接对应一个进程,每个进程或线程都会分配CPU和内存资源,并发过大会榨干服务器资源

二、nginx优点

  • 跨平台,配置简单
  • 非阻塞高并发连接,可处理2-3万并发连接数,官方数据能支持5万并发
  • 内存消耗小
  • 开源,成本低廉
  • 稳定性高,宕机概率非常小
  • 内置健康检查功能(能保证请求发送到非宕机服务器上)

三、nginx应用场景

  1. http服务器,做静态网页服务器
  2. 反向代理、负载均衡:当网站访问量高时,需要多台服务器集群做反向代理可以用nginx做反向代理,多台服务器可以平均分担负载
  3. 虚拟主机
  4. 配置安全管理

四、nginx安装

1、官网下载安装包

nginx: download

2、把下载下来的安装包传到Linux系统中,并解压

3、关闭防火墙和安全机制

4、安装nginx依赖环境

yum -y install pcre-devel zlib-devel openssl-devel gcc gcc-c++ make

5、创建运行用户、组

useradd -M -s /sbin/nologin nginx

6、开始配置

./configure --prefix=/usr/local/nginx? ? ? ? #指定安装路径

--user=nginx? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? #指定用户

?--group=nginx? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?#指定组

--with-http_stub_status_module? ? ? ? ? ? #启用状态统计模块

7、编译并安装

make -j2 && make install

8、建立软连接

9、检查、启动、重载、停止 nginx服务

10、使用systemd管理nginx

五、nginx版本的平滑升级

1、官网下载新版本安装包

2、把下载下来的安装包传到Linux系统中,并解压

3、开始配置

4、make 编译

注意这里不要make install,否则会重名

5、改名旧版本nginx可执行文件

6、复制二进制文件

7、升级

六、nginx应用配置文件

nginx配置文件所存放的路径为 /usr/local/nginx/conf/nginx.conf?

nginx配置文件分为6个块:

  • 全局块:全局配置,对全局生效
  • events块:配置影响 Nginx 服务器与用户的网络连接
  • http块:配置代理,缓存,日志定义等绝大多数功能和第三方模块的配置
  • server块:配置虚拟主机的相关参数,一个 http 块中可以有多个 server 块
  • location块:用于配置匹配的 uri?
  • upstream块:配置后端服务器具体地址,负载均衡配置不可或缺的部分

1、增加nginx并发量

理想的nginx并发量为:worker_processes *?worker_connections(工作进程数*worker进程处理的连接数)

①先设置nginx配置文件

vim? /usr/local/nginx/conf/nginx.conf

保存退出后需要重启nginx

②再在Linux系统中设置最大打开文件数

2、设置长连接

vim? /usr/local/nginx/conf/nginx.conf

3、网页跳转

vim? /usr/local/nginx/conf/nginx.conf

root根目录:root路径 + location路径

alias别名目录:alias路径替代location路径

4、web服务监听配置

vim? /usr/local/nginx/conf/nginx.conf

5、访问状态统计配置

此功能基于?HTTP_STUB_STATUS 模块实现。查看nginx应用可用的模块列表在nginx安装包的auto目录下的options文件中。设置为YES为默认打开,NO为默认关闭。关闭模块用--without,开启模块用--with。

设置状态统计:

vim? /usr/local/nginx/conf/nginx.conf? ? ? ?找到location模块

6、访问控制(账号密码)

①yum安装httpd-tools工具

②创建userlist文件

③更改userlist文件的属主为nginx

④更改userlist文件的权限为仅root用户和文件属主用户nginx可读

⑤修改配置文件

vim? /usr/local/nginx/conf/nginx.conf? ? ? ?找到location模块

⑥nginx -t 检查配置文件语法

⑦重启nginx

⑧测试

7、限制客户端的访问控制

访问控制规则:

deny IP/IP 段:拒绝某个 IP 或 IP 段的客户端访问。
allow IP/IP 段:允许某个 IP 或 IP 段的客户端访问。
规则从上往下执行,如匹配则停止,不再往下匹配。

①vim? /usr/local/nginx/conf/nginx.conf? ? ? ?找到location模块

②重启nginx

③nginx -t检查配置文件语法

④使用curl命令测试

文章来源:https://blog.csdn.net/lcy913/article/details/134899463
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。