您的位置:9159金沙官网 > 9159金沙官网 > 9159金沙官网[Linux] PHP程序员玩转Linux系列-nginx初学

9159金沙官网[Linux] PHP程序员玩转Linux系列-nginx初学

发布时间:2019-12-25 06:25编辑:9159金沙官网浏览(179)

    1.PHP程序员玩转Linux类别-怎么设置使用CentOS

    2.PHP程序员玩转Linux体系-lnmp境遇的搭建

    3.PHP程序猿玩转Linux连串-搭建FTP代码开拓条件

    9159金沙官网[Linux] PHP程序员玩转Linux系列-nginx初学者引导。4.PHP技士玩转Linux种类-备份还原MySQL

    5.PHP程序猿玩转Linux类别-自动备份与SVN

    6.PHP技师玩转Linux类别-Linux和Windows安装nginx

     

    翻译自官方网址文书档案

    nginx有三个master进度和众五个worker进度.master进度的首要目标是读取和施行配置文件,维持worker进度.worker进程真正管理诉求.nginx基于事件模型和操作系统来分配worker进度,配置文件中的worker进程数日常配备成CPU的内核数.暗中同意的安顿文件名是nginx.conf9159金沙官网[Linux] PHP程序员玩转Linux系列-nginx初学者引导。,目录地址经常在/usr/local/nginx/conf/etc/nginx, 或者/usr/local/etc/nginx

     

    千帆竞发,关闭和重载配置

    nginx 开启

    nginx -s reload 重新载入配置文件

    nginx -s quit 文雅的脱离

    nginx -s reopen 重新展开日志文件

    9159金沙官网[Linux] PHP程序员玩转Linux系列-nginx初学者引导。 

    静态内容服务

    开垦配置文件,里面已经满含了叁个server块的例子

    http {
        server {
        }
    }
    

    暗许的nginx配置文件nginx.conf9159金沙官网[Linux] PHP程序员玩转Linux系列-nginx初学者引导。当中,使用include指令包含了/etc/nginx/conf.d/此目录下后缀为.conf的具有配置文件

    http {
        include       /etc/nginx/mime.types;
        default_type  application/octet-stream;
    
        log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
                          '$status $body_bytes_sent "$http_referer" '
                          '"$http_user_agent" "$http_x_forwarded_for"';
    
        access_log  /var/log/nginx/access.log  main;
    
        sendfile        on;
        #tcp_nopush     on;
    
        keepalive_timeout  65;
    
        #gzip  on;
    
        include /etc/nginx/conf.d/*.conf;
    }
    

    /etc/nginx/conf.d/目录下,编辑default.conf文本,平日会有无数的配备文件,各个配置文件中都有二个server块,nginx通过她们监听的端口和server_name来区分,它还有大概会对乞请头和server块里面location指令参数相比较.

    server {
        location / {
            root /var/www/html;
        }
    }
    

    那几个location块钦赐了"/"前缀,相比较央浼的U奥迪Q3I,对于相称到的ULANDI,这几个U奥迪Q7I会被拼接到root指令钦定路径的后边.换句话说,在地头文件系统中去构成路线,就是去恳求/var/www/html.

    若是这里有过多location指令,nginx会选用最长前缀的.上面包车型地铁location块提供了贰个最短前缀,唯有当其余全体的location都还未有匹配到,才会动用它.

    下一步,增添第一个localtion

    server {
        location / {
            root /var/www/html;
        }
        location  {
            root /data;
        }
    }
    

    当呼吁以`开始,第二个location将会匹配到 (location / `也会合作到那些诉求,但是他的前缀比第三个短卡塔尔(英语:State of Qatar)

    于今它曾经得以看做web服务的构造文件平常干活了,监听80端口.在地头机械输入http://localhost就足以访谈到该服务.当央求U凯雷德I以`开头,服务器会响应/data/images目录下的文件.举例:当请求是.

    当呼吁的UOdysseyI不以`开头,该请求会被映射到/var/www/html目录.举例:请求的URI是.

    动用新的配备,开启nginx或然发送reload实信号给nginx的master进度,施行以下命令:

    nginx -s reload
    

    倘使有不足预料的谬误产生,去access.log 和 error.log中找原因,那八个公文的目录在/usr/local/nginx/logs或者/var/log/nginx

     

    布局轻便的反向代理服务

    nginx最常用的效应便是用作反向代理服务器,意味着这一个服务要收到需要,把须求引到被代理的服务,从那边取回响应,发送给顾客端.

    笔者们将配备中央的反向代理服务器,这几个服务管理来自本地目录的图形文件的哀告,并把其余的有所央浼发给代理服务器.在此个例子中,三个服务都会被定义在叁个nginx实例中.

    第黄金时代,定义四个代理服务器,在nginx配置文件中新扩充加一个server块,如下:

    server {
        listen 8080;
        root /data/up1;
    
        location / {
        }
    }
    

    以此轻巧的劳动监听8080端口(在此之前,我们一直不采用过listen指令,因为私下认可是监听的80端口卡塔尔,映射全部的伸手到地头文件系统的/data/up1目录.创建这么些目录,在里头放入index.html文件.注意root指令放在了server上下文了.当location块下并未有root指令时,那些root指令将会被使用.

    下一步,使用上一步中的服务合营,改善一下用作反向代理服务器配置.在首先个location块中,增加四个proxy_pass一声令下,在参数中指明合同名和代办服务的端口(在本例,它是)

    server {
        location / {
            proxy_pass http://localhost:8080;
        }
    
        location ~ .(gif|jpg|png)$ {
            root /data/images;
        }
    }
    

    在其次个location块中,参数是个正则表达式,相称全数后缀是.gif``.jpg或者.png的央浼,使用正则表达式,应该在前边加上~.符合的伸手将会被映射到/data/images目录下

     

    布置FastCGI代理服务

    nginx能够用作去路由央求到FastCGI服务,这样就足以运作一些各类框架和PHP的行使

    最主旨的nginx配置,使用fastcgi_pass一声令下替换proxy_pass指令,fastcgi_param一声令下设置传递给法斯特CGI服务器的参数.假定法斯特CGI服务器运营在localhost:9000.把上部分中的反向代理配置例子拿过来,校勘参数为localhost:9000.在PHP中,SCRIPT_FILENAME参数被看作鲜明脚本名称,QUERY_STRING 被用作传递诉求参数,配置如下:

    server {
        location / {
            fastcgi_pass  localhost:9000;
            fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
            fastcgi_param QUERY_STRING    $query_string;
        }
    
        location ~ .(gif|jpg|png)$ {
            root /data/images;
        }
    }
    

    后天就创办了八个服务,那么些服务将路由出了静态图片文件之外的有所诉求到被代理的劳动器.那么些被代理的服务器是透过法斯特CGI契约运行在localhost:9000上的.

     

    本文由9159金沙官网发布于9159金沙官网,转载请注明出处:9159金沙官网[Linux] PHP程序员玩转Linux系列-nginx初学

    关键词: