nginx 基本使用

简介

       Nginx (engine x) 是一个高性能的HTTP反向代理web服务器,同时也提供了IMAP/POP3/SMTP服务。Nginx是由伊戈尔·赛索耶夫为俄罗斯访问量第二的Rambler.ru站点(俄文:Рамблер)开发的,第一个公开版本0.1.0发布于2004年10月4日。

       Nginx 可以在大多数 Unix Linux OS 上编译运行,并有 Windows 移植版。 Nginx 的1.20.0稳定版已经于2021年4月20日发布,一般情况下,对于新建站点,建议使用最新稳定版作为生产版本,已有站点的升级急迫性不高。Nginx 的源代码使用 2-clause BSD-like license。

        在连接高并发的情况下,Nginx是Apache服务不错的替代品:Nginx在美国是做虚拟主机生意的老板们经常选择的软件平台之一。能够支持高达 50,000 个并发连接数的响应,感谢Nginx为我们选择了 epoll and kqueue作为开发模型。  

支持操作系统

  • FreeBSD 3— 10 / i386; FreeBSD 5— 10 / amd64;

  • Linux 2.2— 4 / i386; Linux 2.6— 4 / amd64; Linux 3— 4 / armv6l, armv7l, aarch64;

  • Solaris 9 / i386, sun4u; Solaris 10 / i386, amd64, sun4v;

  • AIX 7.1 / powerpc;

  • HP-UX 11.31 / ia64;

  • Mac OS X / ppc, i386;

  • Windows XP, Windows Server 2003,Windows 10

1、下载

官网地址  (带有window字样的是window版本,没有待window是linux版本)

2、常用配置

找到conf打开nginx.conf文件进行配置  (\nginx\conf\nginx.conf)文件路径。HTTP代理 示例https://www.nginx.cn/doc/standard/httpproxy.htmlicon-default.png?t=M276https://www.nginx.cn/doc/standard/httpproxy.html

负载均衡 示例https://www.nginx.cn/doc/example/loadbanlance.htmlicon-default.png?t=M276https://www.nginx.cn/doc/example/loadbanlance.html

代码示例

 #user  nobody;
worker_processes  1;

#error_log  logs/error.log;
#error_log  logs/error.log  notice;
#error_log  logs/error.log  info;

#pid        logs/nginx.pid;

events {
    worker_connections  1024;
}
http {

   #负载均衡
   upstream myproject {
   server 127.0.0.1:8000 weight=3; #设置权重  权重越高被访问的次数越多
   server 127.0.0.1:8001 weight=1;
   server 127.0.0.1:8002 weight=1;
   server 127.0.0.1:8003 weight=2;
    }

    include       mime.types;
    default_type  application/octet-stream;
    sendfile        on;
    keepalive_timeout  65;

     #第一个代理
     server {
        # 需要被监听的端口号,前提是此端口号没有被占用,否则在重启 Nginx 时会报错
        listen       5777;
        # 服务名称,无所谓
        server_name  localhost;
        
        # 上述端口指向的根目录
		root E:/xxx/dist;
        # 项目根目录中指向项目首页
        index index.html;
        
        client_max_body_size 500m; 
        
        client_body_buffer_size 128k;
        
        # 根请求会指向的页面
        location / { 
            root E:/xxx/dist;
            # 此处的 @router 实际上是引用下面的转发,否则在 Vue 路由刷新时可能会抛出 404
            try_files $uri $uri/ @router;
            # 请求指向的首页
            
            index  index.html;
        }
        
        # 由于路由的资源不一定是真实的路径,无法找到具体文件
        # 所以需要将请求重写到 index.html 中,然后交给真正的 Vue 路由处理请求资源
        location @router {
            rewrite ^.*$ /index.html last; 
        }
		
		location /xxxx/server.servlet.context-path {  #代理路径1
            proxy_pass   http://127.0.0.1:5778/xxx; #本地真实ip端口
        }
         location /xxx/xxx { #代理路径2
            proxy_pass   http://127.0.0.1:20101/xxx; #本地真实ip端口
          }


    }
	
	#第二个代理
	server {
        listen       57777; #这个nglnx监听的端口  #需要代理的端口
       server_name localhost;
        location /xxx/server.servlet.context-path {  #代理路径1
            proxy_pass   http://127.0.0.1:5778/xxx; #本地真实ip端口
        }
        
         location /xxxx/server.servlet.context-path { #代理路径2
            proxy_pass   http://127.0.0.1:20101/xxx; #本地真实ip端口
        } 
    }
    
}


  • http默认端口:80 https默认端口:441;
  • http下可以设置多个server;
  • 一个server下可以配置多个 location ;
  • 负载均衡:设置的权重越高被访问的次数越多;
  • conf中一定要用分号“;”结尾;

1、启动:
C:\server\nginx-1.0.2>start nginx或
C:\server\nginx-1.0.2>nginx.exe

2、停止:
C:\server\nginx-1.0.2>nginx.exe -s stop或
C:\server\nginx-1.0.2>nginx.exe -s quit
注:stop是快速停止nginx,可能并不保存相关信息;quit是完整有序的停止nginx,并保存相关信息。

3、重新载入Nginx:
C:\server\nginx-1.0.2>nginx.exe -s reload
当配置信息修改,需要重新载入这些配置时使用此命令

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

夢鑰

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

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

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

打赏作者

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

抵扣说明:

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

余额充值