nginx安装与配置反向代理

本文介绍了如何安装Nginx并配置反向代理。通过详细步骤,包括安装、检查版本、理解Nginx目录结构以及location指令的使用,展示了如何设置多个location以根据路径处理不同请求。示例中,讲解了精确匹配、路径前缀匹配和正则匹配等配置方法,并演示了proxy_pass的用法来转发请求。
摘要由CSDN通过智能技术生成

        Nginx (engine x) 是一款基于异步框架的轻量级/高性能的Web 服务器/反向代理服务器/缓存服务器/电子邮件(IMAP/POP3)代理服务器,由俄罗斯的程序设计师Igor Sysoev(伊戈尔·赛索耶夫)所开发.话不多说直接上步骤

1.安装nginx,我是在root用户下不需要加sudo

yum install nginx

 安装成功之后,显示下版本信息

nginx -v

 说明已经安装成功

安装成功默认是处于运行状态

ps aux | grep nginx

 关闭nginx服务

service nginx stop

启动nginx服务

service nginx start

2.nginx常见的目录介绍

配置文件信息

cd /etc/nginx/   
ll

  

 log日志目录

cd /var/log/nginx/
ll

 默认首页目录

cd /usr/share/nginx/html/
ll

3.在/etc/nginx/conf.d目录下,有一个conf.d的目录,,进入conf.d的这个目录里,然后新建一个配置文件frontend.conf,一般我们配置的信息放在这里.

cd /etc/nginx/conf.d
touch frontend.conf

 4.server下配置多个location根据路径匹的不同做不同的处理

语法规则: location [=|~|~*|^~] /uri/ { … }

首先匹配 =,其次匹配^~, 其次是按文件中顺序的正则匹配,最后是交给 / 通用匹配。当有匹配成功时候,停止匹配,按当前匹配规则处理请求

  1. = 开头表示:精确匹配。
  2. ^~ 开头表示:区分大小写以什么开头。
  3. ~ 开头表示:区分大小写的正则匹配。
  4. ~* 开头表示:不区分大小写的正则匹配。
  5. !~ 和!~*分别表示:区分大小写 不匹配 及不区分大小写 不匹配的正则匹配。
  6. / 表示:通用匹配,任何请求都会匹配到。

5.实例解析

server {
    listen       80;
    listen  [::]:80;
    server_name  location.test.com;

    access_log  /var/log/nginx/location.host.access.log  main;

    #*********************注意多个location通常按精确的放前面,模糊大范围的放后面,nginx先找= ******************************
    location = /login.html {  #精确匹配 /login
    root /root/dist;    #请求/login.html相当于寻找资源/root/dist/login.html
    }
    location ^~ /prefix/ {  #区分大小写且以/prefix/开头
    root /root/dist;    #root代表根目录,请求/prefix/prefix.html相当于寻找资源/root/dist/prefix/prefix.html 
    }
    location ~ .(png|jpg)$ {  #不区分大小写且以.png或.jpg结尾
    root /root/dist;  #请求/suffix/a.png相当于寻找资源/root/dist/suffix/a.png
    }
    location ^~ /v1_0/ {  # 区分大小写且以/v1_0/开头
    proxy_pass https://www.jd.com/;    #proxy_pass  此处的url以/结尾,则nginx会取掉location部分再转发,例如,请求/v1_0/电器?name=1 则会转发到https://www.jd.com/电器?name=1
    }
    location ^~ /s {  # /会匹配到所有的
    proxy_pass https://www.baidu.com;   #proxy_pass  此处的url没有以/结尾,则匹配到的地址全部拼接到代理后的地址,例如,请求/s?name=1 则会转发到https://www.baidu.com/s?name=1
    }
    location  / {# 会返回index.html
    root /usr/share/nginx/html;
    index index.html;    
    }  
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

纬领网络

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值