Установка · 3 min read · Feb 06, 2026

Установка Nginx с PHP 5.3 и PHP-FPM на Ubuntu Lucid Lynx (10.04) без компиляции

Установка Nginx с PHP 5.3 и PHP-FPM на Ubuntu Lucid Lynx (10.04) без компиляции

Версия 1.0
Следите за мной в Twitter

Поскольку Apache чаще всего является процессом, требующим много памяти, люди начали искать различные способы размещения своих веб-сайтов. Apache явно не единственный доступный веб-сервер. Несколько хороших примеров — lighttpd и nginx. В этом руководстве я покажу вам, как установить его на вашем сервере Ubuntu. Это руководство также применимо к Debian, хотя и с очень небольшими отличиями.

Готовы? Давайте начнем.

Шаг 0 - Предварительные заметки

Для завершения этого руководства я предполагаю, что вы установили базовую систему Ubuntu Lucid (10.04). Как это можно сделать, можно прочитать в различных руководствах. Это руководство сосредоточено на том, чтобы запустить nginx+php без особых хлопот.

Шаг 1 - Nginx

Установка nginx — это первый шаг, который мы должны сделать. Это можно легко сделать, скачав его из репозитория.

sudo apt-get install nginx

Необходимо изменить конфигурацию vhost, чтобы она работала правильно.

sudo vim /etc/nginx/sites-available/default

Хорошей отправной точкой для вашей конфигурации будет:

server {  
    listen   80;  
    server_name  localhost;  
    access_log  /var/log/nginx/localhost.access.log;  
  
## Стандартное местоположение  
    location / {  
        root   /var/www;  
        index  index.php;  
    }  
  
## Изображения и статический контент обрабатываются иначе  
    location ~* ^.+\.(jpg|jpeg|gif|css|png|js|ico|xml)$ {  
      access_log        off;  
      expires           30d;  
      root /var/www;  
    }  
  
## Обработка всех .php файлов в каталоге /var/www  
    location ~ .php$ {  
        fastcgi_split_path_info ^(.+\.php)(.*)$;  
        fastcgi_pass   backend;  
        fastcgi_index  index.php;  
        fastcgi_param  SCRIPT_FILENAME  /var/www$fastcgi_script_name;  
        include fastcgi_params;  
        fastcgi_intercept_errors        on;  
        fastcgi_ignore_client_abort     off;  
        fastcgi_connect_timeout 60;  
        fastcgi_send_timeout 180;  
        fastcgi_read_timeout 180;  
        fastcgi_buffer_size 128k;  
        fastcgi_buffers 4 256k;  
        fastcgi_busy_buffers_size 256k;  
        fastcgi_temp_file_write_size 256k;  
    }  
  
## Отключить просмотр .htaccess и .htpassword  
    location ~ \/\.ht {  
        deny  all;  
    }  
}  
upstream backend {  
        server 127.0.0.1:9000;  
}  
 

Хорошо, мы закончили здесь. Теперь установим необходимые файлы для PHP.

Шаг 2 - Установка PHP

Многие сайты полагаются на PHP для предоставления им динамического контента, будь то вики, программное обеспечение форума, блог или что-то совершенно другое.

Нет необходимости использовать DotDeb, так как PHP5.3 теперь официально поддерживается в Ubuntu Lucid (10.04). Это так же просто, как

sudo apt-get update

В результате текст должен включать dotdeb.

Теперь мы установим PHP. Чтобы установить PHP-FPM, нам нужно добавить PPA, так как он не поддерживается официально.

 add-apt-repository ppa:brianmercer/php
sudo apt-get update && sudo apt-get install php5-fpm

Если вы планируете использовать базу данных или требуете специфические модули (mcrypt, ldap, snmp и т.д.), вы можете установить их также.

Хорошо, теперь у нас установлены nginx и PHP, и они готовы к работе.

Шаг 3 - Завершение

Перезапустите nginx, чтобы учесть изменения конфигурации, которые мы сделали ранее.

sudo service nginx restart

Перезапуск должен пройти без каких-либо проблем.

После установки php5-fpm он должен был быть запущен. Если вы изменили свои файлы php.ini, вам нужно перезапустить php5-fpm.

sudo service php5-fpm restart

Все в порядке. Теперь они оба должны работать.

Шаг 4 - Тестирование

Чтобы протестировать, работает ли выполнение PHP, создайте файл index.php в /var/www со следующим содержимым:

Посетите ваш веб-сервер, и вы должны увидеть сгенерированную phpinfo. Если нет, что-то пошло не так.

Шаг 5 - Устранение неполадок и окончательные заметки

Если вы не видите phpinfo, возможно, что-то пошло не так. Чтобы выяснить, что именно, вы можете проверить журнал ошибок nginx:

sudo tail /var/log/nginx/error.log

Помните, если вы изменили свой php.ini, вам нужно перезапустить php5-fpm. Перезапуск nginx не обязателен.

В моем примере конфигурации я включил перехват ошибок fastcgi. Если происходит серьезная ошибка (например, “нельзя повторно объявить класс xyz”), nginx может поймать эту страницу и показать “красивую” страницу ошибки, что-то пошло не так. Таким образом, предоставляется меньше информации в случае серьезной ошибки.

Если вам это не нравится, вы можете отключить эту функцию.

Если php5-fpm не работает, ваши PHP файлы не могут быть обработаны, и nginx покажет пользователю страницу с ошибкой.

Ну что ж, я думаю, мы закончили, и теперь вы можете обслуживать PHP с вашим новым веб-сервером на базе nginx. Nginx довольно хорош, и вы можете настроить много. Если вам нужны переписывания, имейте в виду, что nginx не работает с файлами .htaccess. Вам нужно будет изменить настройки вашего vhost, чтобы переписывания работали.

Share: X/Twitter LinkedIn

Get new posts in your inbox

No spam. Unsubscribe anytime.