• 深入浅出nginx


    什么是Nginx?

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

    其特点是占有内存少,并发能力强,事实上nginx的并发能力在同类型的网页服务器中表现较好,中国大陆使用nginx网站用户有:百度、京东、新浪、网易、腾讯、淘宝等。在全球活跃的网站中有12.18%的使用比率,大约为2220万个网站。

    Nginx 是一个安装非常的简单、配置文件非常简洁(还能够支持perl语法)、Bug非常少的服务。Nginx 启动特别容易,并且几乎可以做到7*24不间断运行,即使运行数个月也不需要重新启动。你还能够不间断服务的情况下进行软件版本的升级。

    Nginx代码完全用C语言从头写成。官方数据测试表明能够支持高达 50,000 个并发连接数的响应。

    Nginx作用?

    反向代理服务器;
    在这里插入图片描述
    Nginx提供的负载均衡策略有2种:内置策略和扩展策略。内置策略为轮询,加权轮询,Ip hash。扩展策略

    动静分离,在我们的软件开发中,有些请求是需要后台处理的,有些请求是不需要经过后台处理的(如:css、html、jpg、js等等文件),这些不需要经过后台处理的文件称为静态文件。让动态网站里的动态网页根据一定规则把不变的资源和经常变的资源区分开来,动静资源做好了拆分以后,我们就可以根据静态资源的特点将其做缓存操作。提高资源响应的速度。

    nginx安装

    http://nginx.org/en/download.html
    包很小,直接下载对应版本即可;
    解压后:
    在这里插入图片描述

    操作nginx

    启动建议打开命令行输入命令:
    windows是有.exe,linux就可以直接./nginx启动了,其他命令也是差不多的;

    ## 启动
     .\nginx.exe
    ## 关闭
    nginx -s stop(快速停止) 或 nginx -s quit(完整有序的停止
    ## 指定配置文件启动
     .\nginx.exe  -c ../conf/nginx.conf
    ##看看自己的配置文件有没有问题
    ./nginx.exe -t
    ## 重新加载配置文件
    ./nginx.exe -s reload
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11

    启动成功:
    在这里插入图片描述

    配置文件相关

    配置集群的名称的时候,记得最好是不要带特殊字符或者_等,有可能会出现错误…
    The character [_] is never valid in a domain name

    然后可以配置访问集群,和静态文件,文件上传大小等…

    ## 配置集群:
    upstream server{
    		server localhost:8082;#这是tomcat1的访问路径
    		server localhost:8083;#这是tomcat2的访问路径
    		server localhost:80; #这是nginx的访问路径
    	}
    
    	 server {
            listen       80;
            server_name  abc.com;
    //文件上传大小(5M)
    client_max_body_size 5m;
            location / {
    			root html;
    			proxy_pass http://server;
                index  index.html index.htm index.jsp;
            }
    
            error_page   500 502 503 504  /50x.html;
            location = /50x.html {
                root   html;
            }
        }
    
    ## 配置静态资源
      server {
            listen       80;
            server_name  localhost;
    		
            location / {
                root   html;
                index  index.html index.htm;
            }
            # 配置静态资源路径
    		 location /static/ {  
    			root G:/nginx-1.8.0/aaa-1.80/;  
    		} 
    	
            error_page   500 502 503 504  /50x.html;
            location = /50x.html {
                root   html;
            }	
        }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36
    • 37
    • 38
    • 39
    • 40
    • 41
    • 42
    • 43
  • 相关阅读:
    线程池优化
    如何查看yandex的转化Session Replay(会话重播)
    【校招VIP】java语言同步之锁LOCK
    GIS工具maptalks开发手册(一)——hello world初始化
    Node.js之path路径模块
    C语言实战项目---贪吃蛇(上)
    数据结构-滑动窗口
    揭露测试外包公司,关于外包,你或许听到过这样的声音
    猿创征文|时间序列分析算法之平稳时间序列预测算法和自回归模型(AR)详解+Python代码实现
    MySql运维篇---009:分库分表:垂直拆分、水平拆分、通过MyCat进行分片,读写分离:一主一从、 双主双从
  • 原文地址:https://blog.csdn.net/qq_38366063/article/details/126250732