Download example of nginx config file : nginx.conf
[codesyntax lang=”apache”]
# nobody nobody but you ... user nobody; # max concurrent requests = worker_processes * worker_connections worker_processes 8; # 4 cpus (double core) worker_cpu_affinity 00000001 00000010 00000100 00001000 00010000 00100000 01000000 10000000; # max opened files of each process worker_rlimit_nofile 51200; # only open for dev environment #error_log logs/error.log; #error_log logs/error.log notice; #error_log logs/error.log info; # pid number for nginx pid logs/nginx.pid; events { # for large I/O use epoll; # max connections for each process worker_connections 51200; } # handle http requests http { # map of files and mime-types include mime.types; # default file type of http (can be text/html) default_type application/octet-stream; # format of log file #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 #access_log logs/access.log main; # timeout of keepalive connection keepalive_timeout 650; # efficient file transfer mode, using both sendfile and TCP_CORK, only for unix sendfile on; tcp_nopush on; # start gzip gzip on; # min size of file gzip_min_length 1000; # buffer size gzip_buffers 4 8k; # file types which need gzip gzip_types text/* text/css application/javascript application/x-javascript; # compression ratio (1 for least, 9 for most) gzip_comp_level 9; # whether allow compression for proxy request gzip_proxied any; # header of "Vary: Accept-Encoding" gzip_vary on; # gzip version (use 1.0 for squid) gzip_http_version 1.1 # output buffer size output_buffers 4 32k; # size of output package postpone_output 1460; # for big http header (especially large cookies) client_header_buffer_size 128k; large_client_header_buffers 4 256k; # default charset charset utf-8; ######################################################################## # deny access of default server { listen 80; server_name null; location / { root /dev/null; log_not_found off; } } # for magento-1.4.2-stable ################################################ server { listen 80; server_name www.mglocal.com; root /data/vhosts/mglocal/public_html; error_page 500 502 503 504 /50x.html; location = /50x.html { root html; } location / { index index.php index.html index.htm; if (-f $request_filename) { expires 30d; break; } if (-d $request_filename) { break; } if (!-e $request_filename) { # redirect all requests to magento rewrite ^(.+)$ /index.php last; } } location ~ \.php$ { fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name; # type of project you are running fastcgi_param MAGE_RUN_TYPE website; # the code you set in backend fastcgi_param MAGE_RUN_CODE ft; include fastcgi.conf; } # any access to /app/etc is forbidden location /app/etc { deny all; } access_log /data/weblog/www.mglocal.com.access.log; error_log /data/weblog/www.mglocal.com.error.log; } ########################################################################### # upsteam polling for www.kimbs.cn ######################################## upstream www.kimbs.cn { server 127.0.0.1:8000; server 127.0.0.1:8001; } server { listen 80; server_name www.kimbs.cn; location / { # proxy proxy_pass http://www.kimbs.cn; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; } access_log /data/weblog/www.kimbs.cn.access.log access; error_log /data/weblog/www.kimbs.cn.error.log crit; } # 1st server server { listen 8000; server_name 127.0.0.1; root /data/vhosts/kbs/public_html; error_page 500 502 503 504 /50x.html; location = /50x.html { root html; } location / { index index.php index.html index.htm; if (-f $request_filename) { break; } if (-d $request_filename) { break; } rewrite ^(.+)$ /index.php last; } location ~ \.php$ { fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name; include fastcgi.conf; } access_log /data/weblog/www.kimbs.cn.access.log access; error_log /data/weblog/www.kimbs.cn.error.log crit; } # 2nd server server { listen 8001; server_name 127.0.0.1; root /data/vhosts/kbs2/public_html; error_page 500 502 503 504 /50x.html; location = /50x.html { root html; } location / { index index.php index.html index.htm; if (-f $request_filename) { break; } if (-d $request_filename) { break; } rewrite ^(.+)$ /index.php last; } location ~ \.php$ { fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name; include fastcgi.conf; } access_log /data/weblog/www.kimbs.cn.access.log access; error_log /data/weblog/www.kimbs.cn.error.log crit; } ########################################################################### # for drupal ############################################################## server { listen 80; server_name myproj.local; access_log /data/weblog/myproj.local.access.log access; error_log /data/weblog/myproj.local.error.log crit; root /data/vhosts/myproj/public_html; # prevent '413 Request Entity Too Large' client_max_body_size 32m; # rewrite location / { index index.php index.html index.htm; if (!-e $request_filename) { rewrite ^/(.*)$ /index.php?q=$1 last; } } # hide protected files location ~* .(engine|inc|info|install|module|profile|po|sh|.*sql|theme|tpl(.php)?|xtmpl)$|^(code-style.pl|Entries.*|Repository|Root|Tag|Template)$ { deny all; } # hide backup_migrate files location ~* ^/files/backup_migrate { deny all; } # serve static files directly location ~ .*\.(gif|jpg|jpeg|png|bmp|swf|ico)$ { access_log off; expires 30d; } # js and css files location ~ .*\.(js|css|xml)?$ { expires 1h; } # serve php location ~ \.php$ { fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; fastcgi_split_path_info ^(.+\.php)(.*)$; fastcgi_param PATH_INFO $fastcgi_path_info; # prevent timeout fastcgi_send_timeout 1800; fastcgi_read_timeout 1800; fastcgi_connect_timeout 1800; fastcgi_buffers 8 128k; include fastcgi.conf; include fastcgi_params; } } ########################################################################### }
[/codesyntax]