|
||
Ответить |
|
#1
|
|
Вес репутации:
0
Регистрация: 27.02.2009
Адрес: Москва
Сообщений: 7,302
Сказал(а) спасибо: 578
Спасибок 2,627
в 1,832 сообщениях |
Установка Nginx с PHP 5.3 и PHP-FPM В Ubuntu 10.04 -
28.06.2010, 17:21
Так как Apache большую часть своего рабочего времени очень прожорлив по отношению к памяти, то люди начали искать различные способы по организации своего сайта с менее требовательными аналогами. Apache, безусловно не единственный представитель. Существуют несколько хороших примеров Lighttpd и Nginx. В этой статье речь пойдет о том, как установить Nginx на своем сервере Ubuntu. Статья актуальна и для Debian, с небольшими отличиями.
Начнем. Шаг 0 - Предварительные замечания Естественно, чтобы начать, у вас уже должна быть установлена система на базе Ubuntu Lucid (10.04). Статья акцентируется на установке Nginx + PHP без особых проблем. Шаг 1 - Nginx Установка Nginx является первым шагом, который мы должны сделать. Сделать это можно просто загрузив его изрепозитория. sudo apt-get install nginx sudo vim /etc/nginx/sites-available/default PHP код:
Так, с этим закончили. Теперь будем устанавливать файлы, необходимые для PHP. Шаг 2 - Установка PHP Многие сайты нуждаются в PHP для работы с динамическим контентом, будь то wiki, форум софта, веб-блог или что-то совсем другое. Нет необходимости использовать DotDeb, поскольку PHP5.3 в настоящее время официально поддерживается в Ubuntu Lucid (10,04). sudo apt-get update Теперь установим PHP (часть 1): sudo apt-get install php5-cli php5-common php5-suhosin Для установки PHP-FPM, мы должны добавить PPA к нему, поскольку он официально не поддерживается. add-apt-repository ppa:brianmercer/php sudo apt-get update && sudo apt-get install php5-fpm php5-cgi Итак, теперь у нас есть Nginx и PHP, которые установлены и готовы к работе. Шаг 3 - Завершение Перезагрузите Nginx для того, чтобы обновить конфигурационные изменения, которые мы сделали раньше. sudo /etc/init.d/nginx restart Если вы делали изменения файлов php.ini, вы должны перезапустить php5-fpm sudo /etc/init.d/php5-fpm restart Шаг 4 - Тестирование Для того чтобы проверить, работает ли PHP, создайте файл index.php в /var/www со следующим содержимым: PHP код:
Шаг 5 - Устранение неполадок и заключение Если вы не видите phpinfo, что-то сделано неправильно. Для того, чтобы понять, что пошло не так, можно проверить журнал ошибок Nginx (error log): sudo tail /var/log/nginx/error.log В моем примере конфигурации я разрешил FastCGI перехват ошибок. Если произошли серьезные ошибки (например, "не может переопределить класс XYZ"), Nginx может поймать эту страницу и показать страницу с ошибкой что пошло не так.Если php5-fpm не работает, все ваши скрипты не могут работать и Nginx будет показывать пользователю страницу с ошибкой. Nginx очень хорош с большим количеством настроек. Если вам понадобятся перезаписи, то помните, что Nginx не работает с .htaccess файлами. Вам необходимо изменить настройки виртуального хоста для того, чтобы разрешить перезапись. <!-- Вопросы задаем на форуме, не в ЛС --> |
#2
|
|
Вес репутации:
0
Регистрация: 01.08.2010
Сообщений: 2
Сказал(а) спасибо: 0
Спасибок 0
в 0 сообщениях |
13.08.2010, 21:18
Есть Ubuntu Server 10.04 (без GUI), все делаю по ssh
Вот в конфиге nginx немного запутался! Что нужно указать вместо слова "Место"? в строчке: location ~ .php$ { Место ~. PHP $ ( |
#3
|
|
Вес репутации:
0
Регистрация: 27.02.2009
Адрес: Москва
Сообщений: 7,302
Сказал(а) спасибо: 578
Спасибок 2,627
в 1,832 сообщениях |
13.08.2010, 22:45
Действительно там ошибка
location тильда.php${ fastcgi_split_path_info ^(.+\.php) fastcgi_pass backend; |
#4
|
|
Вес репутации:
0
Регистрация: 01.08.2010
Сообщений: 2
Сказал(а) спасибо: 0
Спасибок 0
в 0 сообщениях |
14.08.2010, 00:24
Vector, и пробел поставь где:
Цитата:
location ~.php$ {
PHP код:
|
Ответить |
Опции темы | |
Опции просмотра | |
|
|