Các cấu hình mặc định trên Ubuntu thường khá an toàn, nhưng chưa thực sự phù hợp với các server chạy ứng dụng PHP hoặc WordPress trong môi trường sản xuất. Bằng cách điều chỉnh một số tham số hợp lý, bạn có thể giúp Nginx hoạt động mượt mà hơn mà không cần nâng cấp phần cứng.
File cấu hình chính nằm tại /etc/nginx/nginx.conf.
Cấu hình tối ưu cho Nginx
user www-data;
worker_processes auto;
pid /run/nginx.pid;
error_log /var/log/nginx/error.log crit;
include /etc/nginx/modules-enabled/*.conf;
worker_rlimit_nofile 100000;
events {
worker_connections 8192;
use epoll;
multi_accept on;
}
http {
##
# Cài đặt cơ bản
##
sendfile on;
tcp_nopush on;
tcp_nodelay on;
types_hash_max_size 4096;
server_tokens off;
keepalive_timeout 30;
keepalive_requests 100000;
reset_timedout_connection on;
include /etc/nginx/mime.types;
default_type application/octet-stream;
##
# Log access & error
##
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 off;
##
# Bảo mật SSL
##
ssl_protocols TLSv1.2 TLSv1.3;
ssl_prefer_server_ciphers on;
##
# Cache file tĩnh
##
open_file_cache max=200000 inactive=20s;
open_file_cache_valid 30s;
open_file_cache_min_uses 2;
open_file_cache_errors on;
##
# Nén Gzip
##
gzip on;
gzip_static on;
gzip_disable "MSIE [1-6]\\.";
gzip_vary on;
gzip_proxied any;
gzip_comp_level 5;
gzip_min_length 1024;
gzip_buffers 32 8k;
gzip_http_version 1.1;
gzip_types
text/plain
text/css
text/xml
text/javascript
application/javascript
application/x-javascript
application/json
application/xml
application/xml+rss
application/ecmascript
image/svg+xml
font/ttf
font/otf;
##
# Cấu hình buffer
##
client_body_buffer_size 256k;
client_header_buffer_size 64k;
large_client_header_buffers 4 256k;
client_max_body_size 128m;
proxy_buffer_size 128k;
proxy_buffers 4 256k;
proxy_busy_buffers_size 256k;
fastcgi_buffering on;
fastcgi_buffers 16 16k;
fastcgi_buffer_size 32k;
##
# Tải các cấu hình site
##
include /etc/nginx/conf.d/*.conf;
include /etc/nginx/sites-enabled/*;
}
Khởi động lại Nginx để áp dụng cấu hình
systemctl restart nginx
Sau khi khởi động lại, bạn có thể kiểm tra trạng thái bằng lệnh:
systemctl status nginx
Nếu không có lỗi xảy ra, Nginx đã sẵn sàng hoạt động với hiệu suất tối ưu hơn.
Bình luận