Nginx相关

Posted issue是fw

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Nginx相关相关的知识,希望对你有一定的参考价值。

nginx常用命令

一下命令在/usr/local/nginx/sbin下执行

①.查看 n g i n x \\rm nginx nginx版本号:./nginx -v


②.关闭 n g i n x \\rm nginx nginx:./nginx -s stop

③.查看与 n g i n x \\rm nginx nginx有关的进程:ps -ef | grep nginx

④.重新加载 n g i n x \\rm nginx nginx:./nginx -s reload

Nginx配置文件

配置文件的路径为:/usr/local/nginx/conf/nginx.conf


配置由三部分组成

①.全局块:从文件开头到 e v e n t s events events之前都是

主要设置一些影响 n g i n x nginx nginx服务器整体运行的配置指令

比如worker_processes,值越大表示处理的并发量越高(会受到硬件限制)

Nginx配置实例

Ⅰ.反向代理实例

例一

访问地址192.168.10.102:80时使用 n g i n x \\rm nginx nginx转发到116.62.17.50:8080

首先192.168.10.102是代理服务器,有 n g i n x \\rm nginx nginx配置

116.62.17.50装有 t o m c a t tomcat tomcat运行在端口 8080 8080 8080

修改 n g i n x \\rm nginx nginx的配置文件vim /usr/local/nginx/conf/nginx.conf如下

    server 
        listen       80;
        server_name  localhost; #表示本机,也可以直接写代理服务器ip
        location / 
            root   html;
            proxy_pass http://116.62.17.50:8080;#转发路径
            index  index.html index.htm;
        
        error_page   500 502 503 504  /50x.html;
        location = /50x.html 
            root   html;
        

例二

访问地址192.168.10.102:9090/cl1时使用 n g i n x \\rm nginx nginx转发到116.62.17.50:8080/cl1

访问地址192.168.10.102:9000/cl2时使用 n g i n x \\rm nginx nginx转发到116.62.17.50:9090/cl2

增加配置如下(只需要在location后面使用正则表达式即可)

    server 
         listen       9000;
         server_name  localhost;

         location ~/cl1/ 
             proxy_pass http://116.62.17.50:8080;
        
         location ~/cl2 
             proxy_pass http://116.62.17.50:9090;
        
    

Ⅱ.负载均衡实例

在访问http://192.168.10.102:33/common/a.html时,以均等的概率把请求分配给

116.62.17.50:8080/common/a.html116.62.17.50:9090/common/a.html

这个先在116.62.17.50服务器的两个 t o m c a t tomcat tomcat中分别建对应的网页

然后在代理服务器192.168.10.102中加入如下 n g i n x \\rm nginx nginx配置

    upstream myserver
        server 116.62.17.50:8080;
        server 116.62.17.50:9090;
    
    server 
        listen       33;
        server_name       localhost;

        location / 
            root   html;
            proxy_pass http://myserver;
            index  index.html index.htm;
        
    

可以看到虽然请求相同,但是 n g i n x nginx nginx会帮我们把请求均摊下去

负载均衡请求策略

①.默认轮询,依次访问upstream中配置的服务

②.根据设置的 w e i g h t weight weight值来分配

    upstream myserver
        server 116.62.17.50:8080 weight=10;
        server 116.62.17.50:9090 weight=1;
    

这样就是接近 10 : 1 10:1 10:1的访问比,权值越大越容易被访问到

③.ip hash

根据ip hash的结果来决定某个访客访问的服务器,这样一个访客每次访问的地址起始都是相同的,可以解决 s e s s i o n session session问题

   upstream myserver
       ip_hash;
       server 116.62.17.50:8080;
       server 116.62.17.50:9090;
   

④.fair:根据服务器响应时间分配,哪个最快相应就是哪个

   upstream myserver
       server 116.62.17.50:8080;
       server 116.62.17.50:9090;
       fair;
   

以上是关于Nginx相关的主要内容,如果未能解决你的问题,请参考以下文章

AJAX相关JS代码片段和部分浏览器模型

将 nginx rtmp 片段发送到 WebRTC

text 有用的nginx命令和片段

Jekyll 偏移代码片段高亮的初始行

从零开始配置vim(27)——代码片段

从零开始配置vim(27)——代码片段