Cấu hình tập tin cài đặt WordPress cơ bản cho webserver Nginx

0
2131
(Last Updated On: Th3 29, 2014)

Nginx là máy chủ Web ổn định, nhanh và chiếm rất ít dung lượng bộ nhớ của máy chủ, khả năng tùy biến cao và cấu hình đơn giản hơn so với Apache truyền thống và tính nâng cao mở rộng được coi là tốt nhất bây giờ. So với IIS, Cherokee, lighttpd hay LiteSpeed thì nginx là không có đối thủ trong lưu trữ tập tin tĩnh và cân bằng tải.

Webserver requests graph.jpg
Biểu đồ cho thấy Nginx chịu các kết nối đồng thời trên giây cao nhất

Dưới đây là tập tin cấu hình đơn giản nhất khi cài đặt WordPress tren webserver này:

# Upstream to abstract backend connection(s) for php
upstream php {
        server unix:/tmp/php-cgi.socket;
        server 127.0.0.1:9000;
}

server {
        ## Your website name goes here.
        server_name domain.tld;
        ## Your only path reference.
        root /var/www/wordpress;
        ## This should be in your http block and if it is, it's not needed here.
        index index.php;

        location = /favicon.ico {
                log_not_found off;
                access_log off;
        }

        location = /robots.txt {
                allow all;
                log_not_found off;
                access_log off;
        }

        location / {
                # This is cool because no php is touched for static content. 
                # include the "?$args" part so non-default permalinks doesn't break when using query string
                try_files $uri $uri/ /index.php?$args;
        }

        location ~ \.php$ {
                #NOTE: You should have "cgi.fix_pathinfo = 0;" in php.ini
                include fastcgi.conf;
                fastcgi_intercept_errors on;
                fastcgi_pass php;
        }

        location ~* \.(js|css|png|jpg|jpeg|gif|ico)$ {
                expires max;
                log_not_found off;
        }
}

Cần để ý phần quan trọng nhất cấu hình thay thế Re-write như trên Apache:

location / {
                # This is cool because no php is touched for static content. 
                # include the "?$args" part so non-default permalinks doesn't break when using query string
                try_files $uri $uri/ /index.php?$args;
        }

Chúc thành công!

Bình luận