WordPress: заменяем Apache nginx’ом

nginx + PHP + FastCGI + WordPress = рабочая конфигурация

Update: статья писалась давным-давно, правильная конфигурация для работы с описана здесь.

Собственно, возникла идея: как заставить WordPress работать под другим web-сервером? Для начала я решил поэкспериментировать с nginx, если будет время — попробую и другие web-сервера.

Предполагается, что в режиме прослушивает 9000 порт на 127.0.0.1.

[-]
View Code nginx configuration
server {
    listen 80;
    server_name example.com;
    index index.php;
    root /var/www/example.com;

    access_log /var/log/nginx/example.com-access.log;
    location ~ \.php$ {
        fastcgi_pass 127.0.0.1:9000;
        fastcgi_index index.php;
        fastcgi_param SCRIPT_FILENAME /var/www/example.com$fastcgi_script_name;
        include fastcgi_params;
    }

    location ~ /\.ht {
        deny all;
    }

    if (!-e $request_filename) {
        rewrite ^(.+)$  /index.php   last;
    }
}

fastcgi_params:

[-]
View Code nginx configuration
fastcgi_param  QUERY_STRING       $query_string;
fastcgi_param  REQUEST_METHOD     $request_method;
fastcgi_param  CONTENT_TYPE       $content_type;
fastcgi_param  CONTENT_LENGTH     $content_length;

fastcgi_param  SCRIPT_NAME        $fastcgi_script_name;
fastcgi_param  REQUEST_URI        $request_uri;
fastcgi_param  DOCUMENT_URI       $document_uri;
fastcgi_param  DOCUMENT_ROOT      $document_root;
fastcgi_param  SERVER_PROTOCOL    $server_protocol;

fastcgi_param  GATEWAY_INTERFACE  CGI/1.1;
fastcgi_param  SERVER_SOFTWARE    nginx/$nginx_version;

fastcgi_param  REMOTE_ADDR        $remote_addr;
fastcgi_param  REMOTE_PORT        $remote_port;
fastcgi_param  SERVER_ADDR        $server_addr;
fastcgi_param  SERVER_PORT        $server_port;
fastcgi_param  SERVER_NAME        $server_name;

# PHP only, required if PHP was built with --enable-force-cgi-redirect
fastcgi_param  REDIRECT_STATUS    200;

Как говорится, ничего сложного…

Автор: ; опубликовано в: nginx, WordPress, Администрирование; метки: Apache, FastCGI, nginx, PHP, WordPress
25
Ноя
2008

RSS Комментарии к статье «WordPress: заменяем Apache nginx’ом» (6)  »

  1. [...] Longa, Vita Brevis « WordPress: заменяем Apache nginx’ом Nov 25, [...]

  2. [...] недели назад я рассказывал про одну из конфигураций nginx для WordPress. С тех пор я получил пару отзывов, что так делать [...]

  3. Сергей

    Неужели придется смириться, снести Apache и поставить Denwer???

  4. Эдуард

    Здравствуйте
    Спасибо за быстрый ответ в предыдущей теме. Я уже писал, у меня вордпресс 2.3.3, выделенный сервер, 4 ядра, 4 гиг оперативки. Встала проблема, для защиты ссылок и привязки их по ip, снял кеширующий плагин. Теперь в пик нагрузки не выдерживает Apache, с одной настройкой – сайт тормозит жутко, грузится по 15 секунд. С другой – работает намного быстрее, но часто выскакивает ошибка 502. Мне советует заменить Apache nginx’ом. Но встала другой вопрос, кто это сделает? Вы мне можете помочь с этим вопросом?

Пожалуйста, не используйте эту форму для комментирования! Данная форма предназначена исключительно для ботов.

Оставить комментарий к записи «WordPress: заменяем Apache nginx’ом»

Ваш e-mail не будет опубликован. Обязательные поля помечены *

*

Можно использовать следующие HTML-теги и атрибуты: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Оставляя комментарий, вы выражаете своё согласие с Правилами комментирования.

Подписаться, не комментируя

गते गते पारगते पारसंगते बोधि स्वाहा