Ở bước này, chúng ta sẽ cùng sửa lại file nginx.conf mặc định trên VPS vì có một số tùy chọn nó sẽ trở nên tốt hơn nếu bạn biết cách cấu hình lại. File nginx.conf này sẽ nằm ở thư mục /etc/nginx/ (nếu bạn làm theo serie này).
Đừng quên chạy lệnh service nginx restart
sau khi thay đổi các file cấu hình của NGINX.
1. Cấu hình worker_procresses và worker_connections
Worker_processes
nghĩa là tổng số processes tối đa mà NGINX được phép sử dụng. Thường thì mặc định NGINX sẽ thiết lập sử dụng 1 process như sau:
worker_processes 1;
Nhưng tốt hơn hết, bạn nên thiết lập số lượng process ngang bằng với số lượng CPU mà bạn đang có. Để xem số lượng CPU có trên VPS, bạn sử dụng lệnh nproc
.
[root@lempstack ~]# nproc 1
Còn worker_connections
nghĩa là số lượng kết nối được phép sử dụng cho mỗi process. Bạn nên đặt con số này là khoảng từ 1024 đến 5000 là đẹp.
worker_connections 2048;
Nếu bạn sử dụng WordPress thì mỗi khi đăng bài, gửi comment,…đều sẽ gửi một số lượng request nhất định đến server, trong nhiều trường hợp có thể bạn sẽ gửi một request khá lớn như bài viết quá dài chẳng hạn thì bạn nên đặt thêm đoạn sau vào giữa cặp http {
trong nginx.conf:
...}
client_body_buffer_size 256k; client_body_in_file_only off; client_body_timeout 60s; client_header_buffer_size 64k; client_header_timeout 20s; client_max_body_size 10m; connection_pool_size 512;
Trường hợp bạn vẫn gặp lỗi “Request Entity Too Large” thì nên tăng cái client_max_body_size
lên.
Gzip là phương thức nó sẽ nén lại các dữ liệu mà trình duyệt nhận từ server rồi sau đó mới gửi đến người dùng. Chẳng hạn tổng dung lượng của website bạn là 1.3MB nhưng nếu bật Gzip lên thì dung lượng website chỉ còn khoảng 40kb là cùng, một con số ấn tượng đúng không.
Chèn đoạn sau vào giữa cặp http {
…}
gzip on; gzip_vary on; gzip_disable "MSIE [1-6]."; gzip_static on; gzip_min_length 1400; gzip_buffers 32 8k; gzip_http_version 1.0; gzip_comp_level 5; gzip_proxied any; gzip_types text/plain text/css text/xml application/javascript application/x-javascript application/xml application/xml+rss application/ecmascript application/json image/svg+xml;
Đó là 3 cách tùy chỉnh NGINX khá đơn giản nhưng hiệu quả rất lớn mà bạn có thể làm. Nhìn chung cấu hình như vậy là đã đủ để chạy một website WordPress với kha khá traffic rồi.