Настройка wordpress на nginx

Стандартная поставка wordpress изначально содержит в себе набор правил преобразования URL в файле .htaccess – но, увы, только для apache. Каким же образом добиться красивой работы wordpress’а с сервером nginx?

К счастью, всё очень просто:

server
{
    server_name your_site.tld;  # здесь указывается URL сайта
    root /path/to/wordpress;    # путь на сервере к директории wordpress
    index index.php;

    location /
    {
        try_files $uri $uri/ /index.php?$args;
    }

    location ~ \.php$
    {
        # В php.ini должно быть установлено "cgi.fix_pathinfo = 0;"
        include fastcgi.conf;
        fastcgi_intercept_errors on;

        fastcgi_pass unix:/tmp/php-cgi.socket;
    }

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