nginx/conf/nginx.conf를 수정합니다. 수정 내용은 다음과 같습니다.
user www www; worker_processes 1; #error_log logs/error.log; #error_log logs/error.log notice; #error_log logs/error.log info; #pid logs/nginx.pid; events { worker_connections 1024; } http { include 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 logs/access.log main; sendfile on; #tcp_nopush on; #keepalive_timeout 0; keepalive_timeout 65; gzip on; gzip_min_length 1k; gzip_buffers 16 64k; gzip_http_version 1.1; gzip_comp_level 9; gzip_types text/plain application/x-javascript text/css application/xml; gzip_vary on; upstream webservers{ server 192.168.1.82; server 192.168.1.88; } proxy_cache_path /data/nginx/cache/webserver levels=1:2 keys_zone=webserver:20m max_size=1g; server{ listen 80; server_name song.com; index index.html idnex.htm; root /data0/htdocs/www; #....................................................防盗链............... #location ~ .*\.(|jpg|gif|png)$ { #root /data0/htdocs/www/; #valid_referers none blocked *.demo.com demo.com 192.168.1.75; #if ($invalid_referer){ #rewrite ^/ http://www.765h.com/error.html; # return 403; #} #} #...................................................防盗链end.................... #......................................................模块缓存 # location /download { # root /data0/htdocs/www/; # accesskey on; # accesskey_hashmethod md5; # accesskey_arg "key"; # accesskey_signature "mypass$remote_addr"; #} #................................................................................ #add_header X-Via $server_addr; #add_header X-Cache $upstream_cache_status; #........................................................动静分离.................. location ~ (\.php)$ { proxy_pass http://webservers; } #......................................................end 动静分离................ #...................................................页面缓存 #location / { # root /data0/htdocs/www; # index index.html index.php index.htm; #proxy_pass http://webservers; # proxy_set_header X-Real-IP $remote_addr; # proxy_cache webserver; #proxy_cache_valid 200 10m; #.........................................................end 页面缓存 #location /img/ { #root /data/img/; #valid_referers none blocked *.demo.com demo.com; #if ($invalid_referer) { # rewrite ^/ http://www.demo.com/images/error.gif; # #return 403; # } #} #error_page 404 /404.html; # redirect server error pages to the static page /50x.html # error_page 500 502 503 504 /50x.html; location = /50x.html { root /data0/htdocs/www; } # proxy the PHP scripts to Apache listening on 127.0.0.1:80 # #location ~ \.php$ { # proxy_pass http://127.0.0.1; #} # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000 # #location ~ \.php$ { # root html; # fastcgi_pass 127.0.0.1:9000; # fastcgi_index index.php; # fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name; # include fastcgi_params; #} # deny access to .htaccess files, if Apache's document root # concurs with nginx's one # #location ~ /\.ht { # deny all; #} } # another virtual host using mix of IP-, name-, and port-based configuration # #server { # listen 8000; # listen somename:8080; # server_name somename alias another.alias; # location / { # root html; # index index.html index.htm; # } #} # HTTPS server # #server { # listen 443; # server_name localhost; # ssl on; # ssl_certificate cert.pem; # ssl_certificate_key cert.key; # ssl_session_timeout 5m; # ssl_protocols SSLv2 SSLv3 TLSv1; # ssl_ciphers HIGH:!aNULL:!MD5; # ssl_prefer_server_ciphers on; # location / { # root html; # index index.html index.htm; # } }
위 내용은 nginx 안티 리칭 + 동적 및 정적 분리 + 역방향 프록시 + 캐시 + 로드 밸런싱에 대한 내용을 포함하고 있으며, PHP 튜토리얼에 관심이 있는 친구들에게 도움이 되기를 바랍니다.