ARTICLE DETAIL

建站实战干货

来自一线的建站与推广经验沉淀,每一条都经过真实交付验证。

Nginx 入门,一篇搞定!

2026/8/28 17:44:45 拓冰建站 浏览量
Nginx 入门,一篇搞定! 文章目录*一、简介* 二、下载和安装* * 1、下载 与 各版本介绍 * 2、安装流程* 三、目录结构分析* 四、配置环境变量* 五、安装 tree 工具 可选* 六、查看版本号* 七、检查配置文件完整性* 八、启动和停止* 九、Nginx 的一些细节* * 1、自动创建临时目录 * 2、自动生成日志文件* 十、重新加载配置文件* 十一、profile配置文件结构* 十二、静态资源的部署和基本配置* * 1、静态资源部署 * 2、基本配置server 块* 十三、正向代理 、反向代理的介绍与区别* * 1、正向代理概念 * 2、反向代理概念 * 3、正向代理、反向代理的区别* 十四、配置反向代理服务器* 十五、负载均衡的介绍与配置* * 1、介绍 * 2、配置负载均衡 * 3、负载均衡策略* *### 一、简介*### 二、下载和安装 官网下载https://nginx.org/en/download.html#### 1、下载 与 各版本介绍#### 2、安装流程 按照以下流程依次执行 安装过程 1、安装依赖包 yum -y install gcc pcre-devel zlib-devel openssl openssl-devel 由于 Nginx 是由 C 语言开发的需要安装一些依赖包比如gcc等。 2、下载Nginx安装包wget https://nginx.org/download/nginx-1.16.1.tar.gz 如果已经下载了安装包并上传到了服务器可以跳过这一步 3、解压 tar -zxvf nginx-1.16.1.tar.gz 4、cd nginx-1.16.1 5、./configure --prefix/usr/local/nginx 该命令用于指定 nginx 的安装目录 nginx 目录是不存在的需要提前通过 mkdir 命令创建出来mkdir -p /usr/local/nginx 6、make make install 两个命令一起执行表示先 make 编译后再通过 install 安装 * *### 三、目录结构分析conf 目录 存放配置文件html 目录 存放静态资源文件*logs 目录 存放运行日志文件*sbin 目录 存放脚本文件重点目录/文件 * conf/nginx.conf nginx配置文件 * html 存放静态文件html、CSS、Js等 * logs 日志目录存放日志文件 * sbin/nginx 二进制文件用于启动、停止Nginx服务* *### 四、配置环境变量 回到根目录 cd / 编辑系统配置文件 vim /etc/profile 配置环境变量 如下图 PATH/usr/local/nginx/sbin:$PATH 刷新配置文件 source /etc/profile*### 五、安装 tree 工具 可选 用于展示目录结构的工具树型展示文件结构 安装命令 yum install tree 使用命令 tree //可树状显示出当前目录的结构信息效果*### 六、查看版本号 如果配置了 Nginx 环境变量则可以在任意目录输入 nginx 命令无需进入sbin目录也无需加 ./ 查看 Nginx 版本号 nginx -v*### 七、检查配置文件完整性 如果配置了 Nginx 环境变量则可以在任意目录输入 nginx 命令无需进入sbin目录也无需加 ./ 检查配置文件完整性 nginx -t*### 八、启动和停止 如果配置了 Nginx 环境变量则可以在任意目录输入 nginx 命令无需进入sbin目录也无需加 ./ 启动Nginx服务 ./nginx 停止Nginx服务 ./nginx -s stop 启动完成后可以查看Nginx进程 ps -ef | grep nginx*### 九、Nginx 的一些细节#### 1、自动创建临时目录 当 Nginx 启动后会自动生成一些临时目录无需在意 #### 2、自动生成日志文件 当 Nginx 启动后会在 logs 目录下生成一些日志文件 *access.log 文件存放 Nginx 运行时的访问日志 *error.log 文件存放 Nginx 运行时的错误日志 *nginx.pid 文件存放 Nginx 运行时的主进程idmaster进程Nginx 服务停止后文件会自动销毁*### 十、重新加载配置文件 如果配置了 Nginx 环境变量则可以在任意目录输入 nginx 命令无需进入sbin目录也无需加 ./作用当我们对 Nginx 配置文件做改动后无需重启 Nginx 使用 reload 命令可以马上生效 重新加载配置文件 刷新配置文件 nginx -s reload*### 十一、profile配置文件结构 在开发中我们常常需要配置的是http 块部分 每次修改配置文件后建议使用-t命令检查配置文件的正确性再使用reload命令重新加载配置文件*### 十二、静态资源的部署和基本配置#### 1、静态资源部署Nginx可以作为静态web服务器来部署静态资源。 静态资源指在服务端真实存在并且能够直接展示的一些文件比如常见的html页面、css文件、js文件、图片、视频等资源。 相对于TomcatNginx处理静态资源的能力更加高效所以在生产环境下一般都会将静态资源部署到Nginx中。 将静态资源部署到Nginx非常简单只需要将文件复制到Nginx安装目录下的html目录中即可。#### 2、基本配置server 块 server { listen 80; #监听端口 server_name localhost; #服务器名称域名 location / { #匹配客户端请求urllocation 后写要匹配的请求路径/ 代表根路径 root html; #指定静态资源根目录配置 html 目录为静态资源根目录 index index.html; #指定默认首页多个请用空格分隔 } } * *### 十三、正向代理 、反向代理的介绍与区别#### 1、正向代理概念是一个位于客户端和原始服务器(origin server)之间的服务器为了从原始服务器取得内容客户端向代理服务器发送一个请求并指定目标(原始服务器)然后代理向原始服务器转交请求并将获得的内容返回给客户端。正向代理的典型用途是为在防火墙内的局域网客户端提供访问Internet的途径。*正向代理一般是在客户端设置代理服务器通过代理服务器转发请求最终访问到目标服务器。#### 2、反向代理概念*反向代理服务器位于用户与目标服务器之间但是对于用户而言反向代理服务器就相当于目标服务器即用户直接 访问反向代理服务器就可以获得目标服务器的资源反向代理服务器负责将请求转发给目标服务器。*用户不需要知道目标服务器的地址也无须在用户端作任何设定。Nginx 提供了反向代理的功能#### 3、正向代理、反向代理的区别*正向代理在客户端设置的代理服务器客户端知道代理服务器的存在*反向代理在目标服务器端设置的代理服务器客户端不知道代理服务器的存在和目标服务器的地址。正向代理在客户端设置。 反向代理在服务端设置 。* *### 十四、配置反向代理服务器 在 location 块中通过 proxy_pass 配置要代理的服务器 server { listen 82; #需要监听的代理服务器端口 server_name localhost; #代理服务器域名 location / { #监听的请求路径 / proxy_pass http://192.168.138.101:8080; #反向代理配置将请求转发到指定服务 } } 解析当客户端访问反向代理服务器 192.168.138.100:82 地址时反向代理服务器就会将客户端请求转发到地址为 192.168.138.101:8080 的目标服务器 并且反向代理服务器再将目标服务器的响应数据转发回客户端。*### 十五、负载均衡的介绍与配置#### 1、介绍早期的网站流量和业务功能都比较简单单台服务器就可以满足基本需求但是随着互联网的发展业务流量越来越大并且业务逻辑也越来越复杂单台服务器的性能及单点故障问题就凸显出来了因此需要多台服务器组成应用集群进行性能的水平扩展以及避免单点故障出现。应用集群将同一应用部署到多台机器上组成应用集群接收负载均衡器分发的请求进行业务处理并返回响应数据*负载均衡器将用户请求根据对应的负载均衡算法分发到应用集群中的一台服务器进行处理 负载均衡器也是一种反向代理服务器只不过是将客户端请求转发到多台服务器上服务器集群#### 2、配置负载均衡 配置到 http-全局块 配置负载均衡 upstream targetserver{ # upstream指令可以定义一组服务器 server 192.168.138.101:8080 weight10; # 可定义多个要均衡负载的服务器用 ; 号分隔 server 192.168.138.101:8081 weight5; # weight 代表权重值越大权重越大该服务器分配请求的概率就越高 } server { listen 8080; server_name localhost; location / { proxy_pass http://targetserver; # 设置反向代理服务器配置了一组负载均衡的服务器 targetserver } } 如果配置负载均衡时不加 weight 关键字来设置权重那么默认的负载均衡策略是 “轮询” 轮询轮着来平均分配。#### 3、负载均衡策略 配置方式 server 服务器ip:端口号 负载均衡策略; 如server 192.168.138.101:8080 weight10;