[Nginx] Nginx 의 기본 설정 과 최적화 1 (전체 설정 예시 와 가상 호스트 설정)
14071 단어 nginx
【 nginx.conf 】
#
user www-data;
# , cpu ; cat /proc/cpuinfo cpu , cpu cores
worker_processes 1;
# PID (/usr/local/nginx/logs/error.log)
error_log /var/log/nginx/error.log;
# id (/usr/local/nginx/logs/nginx.pid)
pid /var/run/nginx.pid;
#
events {
use epoll; #epoll IO(I/O Multiplexing) , linux2.6 , nginx
worker_connections 1024; # worker process
# multi_accept on; # nginx , , worker_connections ,
}
# http ,
http {
# mime , mime.type , mime.type (/usr/local/nginx/conf/mime.types)
#MIME(Multipurpose Internet Mail Extensions) .
include /etc/nginx/mime.types;
#
default_type application/octet-stream;
# (/usr/local/nginx/logs/access.log)
access_log /var/log/nginx/access.log;
# nginx , 。
server_tokens off;
#sendfile nginx sendfile (zero copy ) , ,
# on, IO , off, I/O , uptime.
sendfile on;
# nginx ,
#tcp_nopush on;
# keep-alive
#keepalive_timeout 0;
keepalive_timeout 65;
# nginx , ; , ,
tcp_nodelay on;
# gzip
gzip on;
# gzip 。 IE6 。
gzip_disable "MSIE [1-6]\.(?!.*SV1)";
#
、、 client_header_buffer_size 1k;
、、 large_client_header_buffers 4 4k;
open_file_cache max=100000 inactive=20s; # , ; , 20 。
open_file_cace_valid 30s; # open_file_cache
open_file_cache_min_uses 2; # open_file_cache
open_file_cache_errors on; # , 。 , 。 , 。
#
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;
}
server {
# 80
listen 80;
# www.xx.com
server_name www.xx.com;
#
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;
}
}
}
-------------------------------------------------------------------------------------------------------
"도 메 인 이름 기반 가상 호스트 수 동 설정" 단계: 1. nginx. conf 의 http 세그먼트 에서 하나의 server 세그먼트 는 서비스 호스트 를 표시 합 니 다. 가상 호스트 를 추가 할 때마다 server 세그먼트 를 추가 하면 됩 니 다.2. 가상 호스트 설정 파일 을 따로 새 디 렉 터 리 에 저장 하려 면 http 세그먼트 에서 마지막 으로 include 를 들 어 와 야 합 니 다. 예 를 들 어 include vhost / dog. farwish. conf;3. 이 dog. farwish. conf 에는 server 세그먼트 의 설정 내용 만 있 습 니 다. 예 를 들 어:
server {
listen 80;
server_name dog.farwish.com;
location / {
index index.html index.htm index.php;
root /home/www/dog;
if (!-e $request_filename){
rewrite ^(.*)$ /index.php/?s=$1 last; # TP rewrite
break;
}
autoindex on;
}
location ~ \.php {
root /home/www/dog;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_split_path_info ^(.+\.php)(.*)$;
fastcgi_param PATH_INFO $fastcgi_path_info;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}
# nginx1.6.2 .
4. hosts 파일 편집, vim / etc / hosts, 127.0.0.1 추가 dog.farwish.com
-------------------------------------------------------------------------------------------------------
원 키 설치 패키지 의 설정:
1. 도 메 인 이름 바 인 딩
vim / etc / hosts \ # 형식 추가: 192.168.1.11 www. chenwei. ws
2. 가상 호스트 추가
cd 는 루트 디 렉 터 리 에 설치 되 어 있 습 니 다. 패키지 가 설 치 된 실행 vhost. sh 에 가상 호스트 를 추가 하고 도 메 인 이름 을 입력 하면 됩 니 다.
3. 프로필 편집
vim / usr / local / nginx / conf / vhost / www. chenwei. ws. conf \ # 설정 은 다음 과 같 습 니 다.
server
{
listen 80;
#listen [::]:80;
server_name www.chenwei.ws; #
index index.html index.htm index.php default.html default.ht m default.php;
root /home/wwwroot/default/www.chenwei.ws; #
include other.conf;
#error_page 404 /404.html;
}
#
location ~* \.(eot|ttf|woff)$ {
add_header Access-Control-Allow-Origin *;
}
4. PHP 설정 openbasedir (사용자 가 파일 에 접근 하 는 활동 범 위 를 지정 한 영역 으로 제한 합 니 다. open basedir 는 디 렉 터 리 에 접근 하 는 것 입 니 다):
vim /usr/local/php/etc/php.ini
명령 G 를 사용 하여 커서 를 줄 끝으로 이동 하고 php 가 접근 하 는 호스트 루트 디 렉 터 리 를 설정 합 니 다.정확 하 다 면 변경 할 필요 가 없습니다.
[HOST=www.chenwei.ws]
[PATH=/home/wwwroot/default/www.chenwei.ws]
open_basedir=/home/wwwroot/default/www.chenwei.ws/:/tmp/
Link: http://www.cnblogs.com/farwish/p/4042525.html
@ 다크서클 시인 < www. farwish. com >
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
간단! Certbot을 사용하여 웹 사이트를 SSL(HTTPS)화하는 방법초보자가 인프라 주위를 정돈하는 것은 매우 어렵습니다. 이번은 사이트를 간단하게 SSL화(HTTP에서 HTTPS통신)로 변경하는 방법을 소개합니다! 이번에는 소프트웨어 시스템 Nginx CentOS7 의 환경에서 S...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.