Heim  >  Artikel  >  Backend-Entwicklung  >  Beschreibung der Nginx-Server-Nginxconf-Konfigurationsdatei

Beschreibung der Nginx-Server-Nginxconf-Konfigurationsdatei

WBOY
WBOYOriginal
2016-08-08 09:21:321114Durchsuche

Notieren Sie hier die Konfigurationsdateibeschreibung des Nginx-Servers nginx.conf, Teil der Kommentarsammlung und des Netzwerks.

Laufender Benutzer

Benutzer www-data

Starten Sie den Prozess, normalerweise so eingestellt, dass er der Anzahl der CPUs entspricht

worker_processes 1;

Globales Fehlerprotokoll und PID-Datei

error_log /var/log/nginx /error.log ;

pid /var/run/nginx.pid;

Arbeitsmodus und maximale Anzahl von Verbindungen

Ereignisse {

use epoll; #epoll ist eine Methode zum Multiplexen von E/A (I/O-Multiplexing), wird jedoch nur für Linux2.6- und höher-Kernel verwendet, was die Leistung von Nginx erheblich verbessern kann
worker_connections 1024;#Maximale Anzahl gleichzeitiger Verbindungen für einen einzelnen Hintergrundarbeitsprozess
# multi_accept on;
}

Richten Sie den http-Server ein und verwenden Sie seine Reverse-Proxy-Funktion, um Lastausgleichsunterstützung bereitzustellen

http {

#Legen Sie den MIME-Typ fest, der durch die mime.type-Datei
definiert wird include /etc/nginx/mime.types; default_type application/octet-stream;
#Protokollformat festlegen
access_log /var/log/nginx/access.log;

server {
<code>#sendfile 指令指定 nginx 是否调用 sendfile 函数(zero copy 方式)来输出文件,对于普通应用,
#必须设为 on,如果用来进行下载等应用磁盘IO重负载应用,可设置为 off,以平衡磁盘与网络I/O处理速度,降低系统的uptime.
sendfile        on;
#tcp_nopush     on;

#连接超时时间
#keepalive_timeout  0;
keepalive_timeout  65;
tcp_nodelay        on;

#开启gzip压缩
gzip  on;
gzip_disable "MSIE [1-6]\.(?!.*SV1)";

#设定请求缓冲
client_header_buffer_size    1k;
large_client_header_buffers  4 4k;

include /etc/nginx/conf.d/*.conf;
include /etc/nginx/sites-enabled/*;

#设定负载均衡的服务器列表
 upstream mysvr {
#weigth参数表示权值,权值越高被分配到的几率越大
#本机上的Squid开启3128端口
server 192.168.8.1:3128 weight=5;
server 192.168.8.2:80  weight=1;
server 192.168.8.3:80  weight=6;
}
</code>
#Überwachen Sie Port 80

Hören Sie 80;
#Definieren Sie die Verwendung von www.xx.com für den Zugriff auf
server_name www.xx.com;

}
<code>    #设定本虚拟主机的访问日志
    access_log  logs/www.xx.com.access.log  main;

#默认请求
location / {
      root   /root;      #定义服务器的默认网站根目录位置
      index index.php index.html index.htm;   #定义首页索引文件的名称

      fastcgi_pass  www.xx.com;
     fastcgi_param  SCRIPT_FILENAME  $document_root/$fastcgi_script_name; 
      include /etc/nginx/fastcgi_params;
    }

# 定义错误提示页面
error_page   500 502 503 504 /50x.html;  
    location = /50x.html {
    root   /root;
}

#静态文件,nginx自己处理
location ~ ^/(images|javascript|js|css|flash|media|static)/ {
    root /var/www/virtual/htdocs;
    #过期30天,静态文件不怎么更新,过期可以设大一点,如果频繁更新,则可以设置得小一点。
    expires 30d;
}
#PHP 脚本请求全部转发到 FastCGI处理. 使用FastCGI默认配置.
location ~ \.php$ {
    root /root;
    fastcgi_pass 127.0.0.1:9000;
    fastcgi_index index.php;
    fastcgi_param SCRIPT_FILENAME /home/www/www$fastcgi_script_name;
    include fastcgi_params;
}
#设定查看Nginx状态的地址
location /NginxStatus {
    stub_status            on;
    access_log              on;
    auth_basic              "NginxStatus";
    auth_basic_user_file  conf/htpasswd;
}
#禁止访问 .htxxx 文件
location ~ /\.ht {
    deny all;
}

 }
</code>

Der größte Vorteil der Verwendung von Nginx ist der Lastausgleich

Wenn Sie verwenden möchten Beim Lastausgleich können Sie die Konfiguration des http-Knotens wie folgt ändern:

Stellen Sie den http-Server ein und verwenden Sie seine Reverse-Proxy-Funktion, um Lastausgleichsunterstützung bereitzustellen

http {

#Legen Sie den MIME-Typ fest, der durch die mime.type-Datei

definiert wird include /etc/nginx/mime.types; default_type application/octet-stream;
#Protokollformat festlegen
access_log /var/log/nginx/access.log;


upstream mysvr2 {

Der #Weigth-Parameter stellt die Gewichtung dar. Je höher die Gewichtung, desto größer ist die Chance,
<code>#省略上文有的一些配置节点

#。。。。。。。。。。

#设定负载均衡的服务器列表
 upstream mysvr {
#weigth参数表示权值,权值越高被分配到的几率越大
server 192.168.8.1x:3128 weight=5;#本机上的Squid开启3128端口
server 192.168.8.2x:80  weight=1;
server 192.168.8.3x:80  weight=6;
}
</code>


#Der erste virtuelle Server

zugewiesen zu werden Server {
<code>server 192.168.8.x:80  weight=1;
server 192.168.8.x:80  weight=6;
}
</code>
#Hören Sie sich Port 80 von 192.168.8.x an

Hören Sie 80;
Servername 192.168.8.x;


}

<code>  #对aspx后缀的进行负载均衡请求
location ~ .*\.aspx$ {

     root   /root;      #定义服务器的默认网站根目录位置
      index index.php index.html index.htm;   #定义首页索引文件的名称

      proxy_pass  http://mysvr ;#请求转向mysvr 定义的服务器列表

      #以下是一些反向代理的配置可删除.

      proxy_redirect off;

      #后端的Web服务器可以通过X-Forwarded-For获取用户真实IP
      proxy_set_header Host $host;
      proxy_set_header X-Real-IP $remote_addr;
      proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
      client_max_body_size 10m;    #允许客户端请求的最大单文件字节数
      client_body_buffer_size 128k;  #缓冲区代理缓冲用户端请求的最大字节数,
      proxy_connect_timeout 90;  #nginx跟后端服务器连接超时时间(代理连接超时)
      proxy_send_timeout 90;        #后端服务器数据回传时间(代理发送超时)
      proxy_read_timeout 90;         #连接成功后,后端服务器响应时间(代理接收超时)
      proxy_buffer_size 4k;             #设置代理服务器(nginx)保存用户头信息的缓冲区大小
      proxy_buffers 4 32k;               #proxy_buffers缓冲区,网页平均在32k以下的话,这样设置
      proxy_busy_buffers_size 64k;    #高负荷下缓冲大小(proxy_buffers*2)
      proxy_temp_file_write_size 64k;  #设定缓存文件夹大小,大于这个值,将从upstream服务器传

   }

 }
</code>

Das Obige stellt die Konfigurationsdateibeschreibung des Nginx-Servers nginxconf vor, einschließlich des relevanten Inhalts. Ich hoffe, dass es für Freunde hilfreich ist, die sich für PHP-Tutorials interessieren.

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn