|
|
- # set user for nginx
- user {{ $user }};
-
- # you must set worker processes based on your CPU cores
- worker_processes {{ $processes }};
-
- # number of file descriptors used for nginx
- # the limit for the maximum FDs on the server is usually set by the OS.
- # if you don't set FD's then OS settings will be used which is by default 2000
- worker_rlimit_nofile 100000;
-
- pid /run/nginx.pid;
-
- events {
- # determines how much clients will be served per worker
- worker_connections {{ $connections }};
-
- # optimized to serve many clients with each thread, essential for linux
- use epoll;
-
- # accept as many connections as possible
- multi_accept on;
- }
-
- http {
- server_tokens off;
-
- @if ($env === 'development')
- # error log will be only write from debug
- error_log /var/log/nginx.error_log debug;
-
- @else
- # error log will be only write from warn-level
- error_log /var/log/nginx.error_log warn;
-
- # no logging for 3XX
- map \$status \$loggable {
- ~^[3] 0;
- default 1;
- }
-
- # send headers in one piece, it is better than sending them one by one
- tcp_nopush on;
-
- # don't buffer data sent, good for small data bursts in real time
- tcp_nodelay on;
-
- # caching
- # optimizes serving static files from the file system
- sendfile on;
-
- # assets file, 1000 files for 30 seconds
- open_file_cache max=200000 inactive=20s;
- open_file_cache_valid 30s;
- open_file_cache_min_uses 2;
- open_file_cache_errors on;
-
- @endif
- #buffer
- client_body_buffer_size 128k;
- client_max_body_size 250m;
- client_header_buffer_size 1k;
-
- large_client_header_buffers 4 4k;
-
- output_buffers 1 32k;
- postpone_output 1460;
-
- # allow the server to close connection on non responding client, this will free up memory
- reset_timedout_connection on;
-
- # server will close connection after this time -- default 75
- keepalive_timeout 30;
-
- client_header_timeout 3m;
- client_body_timeout 10m;
- send_timeout 3m;
-
- # compress files, but not on older version of IE
- gzip on;
- gzip_min_length 1000;
- gzip_vary on;
- gzip_proxied expired no-cache no-store private auth;
- gzip_disable "MSIE [1-6]\.";
- gzip_types
- application/x-javascript
- text/css
- application/javascript
- text/javascript
- text/plain
- text/xml
- application/json
- application/vnd.ms-fontobject
- application/x-font-opentype
- application/x-font-truetype
- application/x-font-ttf
- application/xml
- font/eot
- font/opentype
- font/otf
- image/svg+xml
- image/vnd.microsoft.icon;
-
- # includes
- include /etc/nginx/conf.d/*.conf;
- include /etc/nginx/sites-enabled/*.conf;
- include /etc/nginx/mime.types;
- }
|