Last active
March 17, 2020 13:01
-
-
Save hieubuiduc/d5e33dfbac52b258ff53 to your computer and use it in GitHub Desktop.
Nginx default configuration file
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# Nginx Configuration File | |
# http://wiki.nginx.org/Configuration | |
# Run as a less privileged user for security reasons. | |
user nginx; | |
# Set this parameters to the number of CPU core | |
# cat /proc/cpuinfo | grep processor | wc -l | |
# The maximum number of connections for Nginx is calculated by: | |
# max_clients = worker_processes * worker_connections | |
worker_processes 2; | |
# Maximum open file descriptors per process; | |
# should be > worker_connections. | |
worker_rlimit_nofile 8192; | |
events { | |
# When you need > 8000 * cpu_cores connections, you start optimizing your OS, | |
# and this is probably the point at which you hire people who are smarter than | |
# you, as this is *a lot* of requests. | |
worker_connections 1024; | |
# Only for Linux 2.6 or > | |
use epoll; | |
# Accept as many connections as possible | |
multi_accept on; | |
} | |
http { | |
# Hide the Nginx version number | |
server_tokens off; | |
# Define the MIME types for files. | |
include mime.types; | |
default_type application/octet-stream; | |
# Update charset_types due to updated mime.types | |
charset_types text/xml text/plain text/vnd.wap.wml application/x-javascript application/rss+xml text/css application/javascript application/json; | |
# Tweeks | |
sendfile on; | |
tcp_nodelay on; | |
tcp_nopush off; | |
keepalive_timeout 65; | |
client_body_timeout 30; | |
client_header_timeout 30; | |
send_timeout 30; | |
client_max_body_size 8M; | |
reset_timedout_connection on; | |
# Log | |
set_real_ip_from 127.0.0.1; | |
real_ip_header X-Forwarded-For; | |
log_format main '$remote_addr - $remote_user [$time_local] $status ' | |
'"$request" $body_bytes_sent "$http_referer" ' | |
'"$http_user_agent" "$http_x_forwarded_for"'; | |
# Enable Gzip compressed. | |
gzip on; | |
gzip_disable "MSIE [1-6].(?!.*SV1)"; | |
gzip_vary on; | |
gzip_comp_level 5; | |
gzip_min_length 256; | |
gzip_proxied any; | |
gzip_buffers 16 8k; | |
# Compress all output labeled with one of the following MIME-types. | |
gzip_types | |
application/atom+xml | |
application/javascript | |
application/json | |
application/rss+xml | |
application/vnd.ms-fontobject | |
application/x-font-ttf | |
application/x-web-app-manifest+json | |
application/xhtml+xml | |
application/xml | |
font/opentype | |
image/svg+xml | |
image/x-icon | |
text/css | |
text/plain | |
text/x-component; | |
# text/html is always compressed by HttpGzipModule | |
# This should be turned on if you are going to have pre-compressed copies (.gz) of | |
# static files available. If not it should be left off as it will cause extra I/O | |
# for the check. It is best if you enable this in a location{} block for | |
# a specific directory, or on an individual server{} level. | |
# gzip_static on; | |
include /etc/nginx/conf.d/*.conf; | |
include /etc/nginx/sites-enabled/*; | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment