nginx 快速学习

NGINX学习

参考B站视频 BV1F5411J7vK、BV1Bx411Z7Do

介绍

Nginx(engine x)是一个高性能的HTTP和反向代理web服务器,同时也提供IMAP/POP3/SMTP服务。

高性能:响应快 并发高

作用

① HTTP代理,反向代理:作为web服务器最常用的功能之一,尤其是反向代理

  • 正向代理
    vpn:代理服务器帮你请求外网资源 。代理客户端的就是正向代理
  • 反向代理
    代理服务端

正向代理隐藏真实的客户端,反向代理隐藏真实的服务端

② 负载均衡

③ 动静分离

下载

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

文件

解压安装包之后

  • nginx.conf

    删除掉注释之后不到三十行:
powershell 复制代码
worker_processes  1;

events {
    worker_connections  1024;
}

http {
    include       mime.types;
    default_type  application/octet-stream;

    sendfile        on;

    keepalive_timeout  65;

    server {
        listen       80;
        server_name  localhost;  # 搭配上面的80,localhost80访问到
        location / { # 默认的/路径
            root   html;  # 这里的html是文件
            index  index.html index.htm;
        }

        error_page   500 502 503 504  /50x.html;
        location = /50x.html { # 出错时的错误页
            root   html;
        }
    }
}

补充说明 location / 的root
root html解释:安装路径为默认根路径,其下面的html文件

- location优先级问题

location / 匹配所有路径,访问的时候如果是localhost:80/b或者localhost:80/a也会到这里。但这个是最弱的级别

location = /a {}是优先级最高的,访问路径必须完全等于/a,localhost:80/a

location ^~ /a {}匹配优先级次高的,只要包含/a就可以,localhost:80/a/b

location ~ /\w {}优先级第三高,正则匹配。\w匹配的是数字字母下划线三种类型。

同一优先级,按书写顺序匹配。

  • 反向代理小技巧
powershell 复制代码
访问 localhost:80/a时,代理到 http://192.168.0.12:80/a
location /a {
  proxy_pass http://192.168.0.12:80;
}

访问 localhost:80/a时,代理到 http://192.168.0.12:80,这里的区别是没有/a
location /a/ {
  proxy_pass http://192.168.0.12:80/;
}

常用命令

powershell 复制代码
whereis nginx  # 查看安装到哪里了  我安装到 /usr/local/nginx
cd /usr/local/nginx/sbin/
./nginx # 启动
./nginx -s stop # 停止
./nginx -s quit # 安全退出
./nginx -s reload # 重新加载配置文件,但凡修改了配置文件都要用这个命令
ps aux|grep nginx # 查看nginx教程
相关推荐
杏花春雨江南15 小时前
腾讯云 CLB (Cloud Load Balancer) 为例,详细讲解如何配置 Nginx 集群
nginx·云计算·腾讯云
牛奶咖啡1317 小时前
Nginx+Tomcat集群Redis共享session方案
redis·nginx·tomcat·redisson·分布式session共享方案·分布式session实现·jdk1.8环境安装
荣光波比18 小时前
Nginx 实战系列(四)—— Nginx反向代理与负载均衡实战指南
运维·nginx·云计算·负载均衡
岚天start19 小时前
K8s Ingress Annotations参数使用指南
nginx·kubernetes·k8s·ingress·ingress控制器
Mr. Cao code19 小时前
探索OpenResty:高性能Web开发利器
linux·运维·服务器·前端·nginx·ubuntu·openresty
荣光波比1 天前
Nginx 实战系列(一)—— Web 核心概念、HTTP/HTTPS协议 与 Nginx 安装
linux·运维·服务器·nginx·云计算
m0_749299952 天前
Nginx主配置文件
java·服务器·nginx
LJC_Superman2 天前
Web与Nginx网站服务
运维·服务器·前端·网络·数据库·nginx·vim
ʚʕ̯•͡˔•̯᷅ʔɞ LeeKuma2 天前
nginx常用命令(备忘)
服务器·nginx
误入运维泥潭2 天前
LVS、Nginx与HAProxy负载均衡技术对比介绍
nginx·lvs·haproxy·keealived