백엔드 개발 PHP 튜토리얼 Nginx 서버 nginxconf 구성 파일 설명

Nginx 서버 nginxconf 구성 파일 설명

Aug 08, 2016 am 09:21 AM
fastcgi nginx proxy server

댓글 수집 및 네트워크의 일부인 Nginx 서버 nginx.conf의 구성 파일 설명을 여기에 기록하세요.

실행 중인 사용자

user www-data; 🎜 >프로세스를 시작합니다. 일반적으로 CPU 수와 동일하게 설정됩니다

worker_processes 1;

전역 오류 로그 및 PID 파일

error_log /var/log/nginx /오류.로그

pid /var/run/nginx.pid;


작업 모드 및 최대 연결 수

이벤트 {

epoll을 사용하세요. #epoll은 IO(I/O Multiplexing)를 다중화하는 방법이지만 Linux2.6 이상의 커널에서만 사용되므로 nginx의 성능을 크게 향상시킬 수 있습니다

Worker_connections 1024;#단일 백그라운드 작업자 프로세스에 대한 최대 동시 연결 수
# multi_accept
}

http 서버를 설정하고 역방향 프록시 기능을 사용하여 로드 밸런싱 지원 제공

http {

#mime.type 파일에 정의된 MIME 유형을 설정합니다

/etc/nginx/mime.types 포함
default_type 애플리케이션/옥텟-스트림
#로그 형식 설정
access_log /var/log/nginx/access.log;

서버 {
<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>
로그인 후 복사
#포트 80에서 수신

들어보세요
#www.xx.com을 사용하여
에 액세스하도록 정의 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>
로그인 후 복사

위는 Nginx를 사용하는 가장 큰 이점은 로드 밸런싱입니다.

사용하고 싶다면. 로드 밸런싱을 사용하면 다음과 같이 http 노드 구성을 수정할 수 있습니다.

http 서버를 설정하고 역방향 프록시 기능을 사용하여 로드 밸런싱 지원을 제공합니다.

http {

#mime.type 파일에 정의된 MIME 유형을 설정합니다

/etc/nginx/mime.types 포함
default_type 애플리케이션/옥텟-스트림
#로그 형식 설정
access_log /var/log/nginx/access.log;

업스트림 mysvr2 {
<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>
로그인 후 복사
#weigth 매개변수는 가중치를 의미하며, 가중치가 높을수록 할당될 확률이 높아집니다


#첫 번째 가상 서버
<code>server 192.168.8.x:80  weight=1;
server 192.168.8.x:80  weight=6;
}
</code>
로그인 후 복사
서버 {

#192.168.8.x의 포트 80 듣기
들어보세요
서버 이름 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>
로그인 후 복사

위 내용은 관련 내용을 포함하여 Nginx 서버 nginxconf의 구성 파일 설명을 소개하고 있어 PHP 튜토리얼에 관심이 있는 친구들에게 도움이 되기를 바랍니다.

본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

뜨거운 기사 태그

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

Tomcat 서버에 대한 외부 네트워크 액세스를 허용하는 방법 Tomcat 서버에 대한 외부 네트워크 액세스를 허용하는 방법 Apr 21, 2024 am 07:22 AM

Tomcat 서버에 대한 외부 네트워크 액세스를 허용하는 방법

nginx 시작 및 중지 명령은 무엇입니까? nginx 시작 및 중지 명령은 무엇입니까? Apr 02, 2024 pm 08:45 PM

nginx 시작 및 중지 명령은 무엇입니까?

thinkphp를 실행하는 방법 thinkphp를 실행하는 방법 Apr 09, 2024 pm 05:39 PM

thinkphp를 실행하는 방법

Windows 서버 백업을 설치, 제거 및 재설정하는 방법 Windows 서버 백업을 설치, 제거 및 재설정하는 방법 Mar 06, 2024 am 10:37 AM

Windows 서버 백업을 설치, 제거 및 재설정하는 방법

nginx에 오신 것을 환영합니다! 어떻게 해결하나요? nginx에 오신 것을 환영합니다! 어떻게 해결하나요? Apr 17, 2024 am 05:12 AM

nginx에 오신 것을 환영합니다! 어떻게 해결하나요?

phpmyadmin을 등록하는 방법 phpmyadmin을 등록하는 방법 Apr 07, 2024 pm 02:45 PM

phpmyadmin을 등록하는 방법

nodejs 프로젝트를 서버에 배포하는 방법 nodejs 프로젝트를 서버에 배포하는 방법 Apr 21, 2024 am 04:40 AM

nodejs 프로젝트를 서버에 배포하는 방법

웹사이트에 접속할 때 nginx 문제를 해결하는 방법 웹사이트에 접속할 때 nginx 문제를 해결하는 방법 Apr 02, 2024 pm 08:39 PM

웹사이트에 접속할 때 nginx 문제를 해결하는 방법

See all articles