了解Nginx安装和应用

58 阅读4分钟

简单使用Nginx

1. 安装Nginx

  • 安装

    • 第一种方式直接点击nginx.exe即可

    ps:有的系统这里的话电脑瞬间弹窗,这是正常的像我一样以为安装失败、下载好几个包重试

    • 第二种方式通过指令安装

    直接输入当前文件夹地址栏“powershell或者是cmd”回车进入指令窗口

    • image-20231206113508222.png
  • 输入“start nginx.exe”指令

    • image-20231206140315854.png
  • 验证启动成功

    1. 查看版本号
    2. 去浏览器输入“http://localhost
    • cmd:输入“nginx -v”
    • image-20231206140330395.png
    • powersheell:输入“.\nginx -v”
    • image-20231206140350404.png
    • 注意你上面使用的是什么命令窗口接下来就用对应的nginx格式。下面的讲到的指令都是一样的对应
    • image-20231206120303387.png

2. 配置文件

  • image-20231206120415435.png

    conf:存放配置文件,可以在这里编辑和管理nginx的主要配置文件nginx.conf

    contrib:存放附加的nginx模块和拓展、可以增强nginx功能

    docs:存放官方文档、或者使用文文档

    html:存放nginx的默认网页根目录,用于存放网站的静态文件(如HTML、CSS、JavaScript等

    logs:存放nginx日志文件,包括访问日志、报错日志

    temp:存放临时的文件或者缓存文件的文件夹

3. 如何简单使用

  • 打开nginx--->confg文件---->nginx.confg配置文件夹配置上面的路径

  • 以下是简化的nginx配置,了解基本的配置项的作用

 worker_processes  1; # 指定 Nginx 启动的 worker 进程数
        events {
            worker_connections  1024; # 定义 Nginx 的事件模块配置,在这里可以设置 worker 进程的最大连接数 (worker_connections)
        }
        http { # 定义 HTTP 模块配置
            include       mime.types; # 引入其他配置文件,mime.types 文件定义了 MIME 类型与文件扩展名的映射关系
            default_type  application/octet-stream; # 默认的 MIME 类型,当请求的文件类型无法匹配时使用。
            sendfile        on; # 开启文件传输优化功能
            keepalive_timeout  65; # 客户端与服务器之间的连接保持时间
            server { # 定义一个服务
                listen       80; # 匹配的端口号
                server_name  localhost; # 指定服务的域名
                location / { # 定义根路径
                    root   html; # 指定了根目录的路径
                    index  index.html index.htm; # 指定了默认的索引文件,当访问根路径时,会自动寻找index.html或index.htm文件进行响应
                    proxy_pass http://www.baidu.com # 反向代理域名
                }
            }
        }
  • 要想访问到指定的域名地址关键在location / { root ; index }的配置

  • 页面存放地址

    • image-20231206141112292.png
  •   # 配置 
      location / {
           root  E:/nginx/demo; 
           index index.html index.htm;
        }
    
  • image-20231206153132042.png

切记每次修改完配置文件都需要执行一次 nginx -s reload 指令重新加载nginx

  • 反向代理到远程
worker_processes  5; # 指定 Nginx 启动的 worker 进程数
events {
    worker_connections  1024;
}
http {
    server {
        listen       80;
        server_name  localhost; # 指定服务器的域名
        location / {
            root E:/nginx-demo/demo;
            index index.html index.htm;
            proxy_pass https://www.baidu.com/;  #需要反代的域名
        }
    }
}

image.png

4. 常用的命令

# 启动 Nginx: nginx 或 /path/to/nginx
# 停止 Nginx: nginx -s stop
# 优雅停止 Nginx: nginx -s quit
# 重新加载配置文件: nginx -s reload
# 检查配置文件语法是否正确: nginx -t 或 /path/to/nginx -t
# 显示 Nginx 版本信息: nginx -v 或 /path/to/nginx -v
# 显示 Nginx 编译时的配置参数: nginx -V 或 /path/to/nginx -V

5. nginx用途----常用

1.  静态文件服务:Nginx 可以快速、高效地提供静态文件(如 HTML、CSS、JavaScript、图像等)的访问。

2.  反向代理:Nginx 可以将客户端请求代理到后端服务器,隐藏后端服务器的真实 IP 地址,并实现请求的负载均衡和高可用性。

3.  负载均衡:Nginx 的负载均衡功能可以将请求分发到多个后端服务器,以提高系统的性能和可伸缩性。

4.  HTTP/2 支持:Nginx 支持 HTTP/2 协议,可以提供更高效的传输和并发请求处理能力。

5.  SSL/TLS 加密:Nginx 可以配置 SSL/TLS 证书,实现安全的 HTTPS 连接。

6.  缓存:Nginx 可以作为缓存服务器,缓存静态内容或动态内容的响应,减轻后端服务器的负载并提供更快的响应速度。

7.  URL 重写和重定向:Nginx 可以根据规则重新编写 URL 或将请求重定向到其他页面或域名。

8.  安全性增强:Nginx 提供了许多安全性增强功能,如限制连接速率、防止 DDOS 攻击、阻止恶意请求等。

9.  日志记录和监控:Nginx 可以记录访问日志、错误日志和其他统计信息,以便进行监控和分析。

10. WebSocket 支持:Nginx 对 WebSocket 协议有很好的支持,可以实现实时通信和推送功能。