Как установить Nginx И PHP (PHP-FPM) на CentOS 6

Как установить Nginx И PHP (PHP-FPM) на CentOS 6

В этой статье, я покажу и расскажу как установить Nginx и PHP (PHP-FPM) чтобы они совместно работали в CentOS 6. Для начала я использовал чистую версию CentOS 6. Первым шагом является update CentOS до последней версии, чтобы это сделать введите следующую команду:

# yum update -y

Для начала установки нужно установить несколько пакетов, т.к я использую 64бит центОС:

# yum install gcc.x86_64 gcc-c++.x86_64 make.x86_64 wget.x86_64

Установка Nginx на Centos 6

Соберу энжинкс из исходного кода, то этому нужно посетить официальный сайт и скачать последнюю версию:

# wget http://nginx.org/download/nginx-1.6.0.tar.gz
# tar zxvf nginx-1.6.0.tar.gz # cd nginx-1.6.0

Сконфигурируем наш nginx, а затем соберем его:

# ./configure --prefix=/webserver/nginx --without-mail_pop3_module --without-mail_imap_module --without-mail_smtp_module --with-http_ssl_module --with-http_stub_status_module --with-http_gzip_static_module
# make && make install

Вы можете получить некоторые ошибки вроде следующего:

ошибка, нужно установить yum install pcre-devel.x86_64

ошибка, нужно установить pcre-devel.x86_64

Чтобы исправить это, выполните команду:

# yum install pcre-devel.x86_64

Так же может выскочить еще ошибка:

ошибка, нужно установить openssl.x86_64 и openssl-devel.x86_64

ошибка, нужно установить openssl.x86_64 и openssl-devel.x86_64

Исправляем мы это следующим образом:

# yum install openssl.x86_64 openssl-devel.x86_64

Так же Вы можете посмотреть и найти ошибку в моей статье, если у вас есть какие то проблемы, в ней собраны часто распространенные ошибки при компиляции ПХП.

Если вы хотите запустить Nginx по умолчанию при загрузке системы, то для этого нужно создать файл/etc/init.d/Nginx со следующим содержанием:
Посмотреть можно его тут (скачать тоже).

Изменим права на файл Nginx, чтобы он мог выполняться, для этого выполните:

# chmod +x /etc/init.d/nginx

Чтобы запустить Nginx в первый раз выполните следующую команду:

# /etc/init.d/nginx start

Установка PHP (PHP-FPM) из исходников на CentOS

Идем на сайт ХП и скачиваем самую последнюю версию PHP (или не самую, выбирать Вам), я буду использовать php-5.3.8:

# wget http://www.php.net/get/php-5.3.8.tar.gz/from/ca.php.net/mirror
# tar zxvf php-5.3.8.tar.gz && cd php-5.3.8

Для того чтобы собрать PHP, я создал bash файл с именем php-fpm.sh и добавил в него следующую сборку: Посмотреть можно его тут (скачать тоже).

Чтобы сделать конфигур и скомпилировать ПХП выполните следующие команды:

# sh build.sh && make && make install

Если у вас есть проблемы со сборкой PHP, то читайте эту статью (напишу скоро!). Следующий шаг, скопируйте php.ini в /webserver/php/etc/, для этого выполним:

# cp php.ini-production /webserver/php/etc/php.ini

Переименовать PHP-fpm.conf:

# cd /webserver/php/etc 
# cp php-fpm.conf.default php-fpm.conf

Отредактируем PHP-fpm.conf и добавим следующие данные:

[global]
pid = run/php-fpm.pid
error_log = log/php-fpm.log
[www]
listen = 127.0.0.1:9000
listen.allowed_clients = 127.0.0.1
user = nobody
group = nobody
pm = dynamic
pm.max_children = 51
pm.start_servers = 21
pm.min_spare_servers = 6
pm.max_spare_servers = 36
pm.max_requests = 500

Если вы хотите запустить PHP-FPM по умолчанию при загрузке системы, то нужно создать файл /etc/init.d/php-fpm и добавить следующие данные:
Посмотреть можно его тут (скачать тоже).

Сменим права на файл для его выполнения:

# chmod +x /etc/init.d/php-fpm

Для запуска PHP-FPM впервый раз, введите следующую команду:

# /etc/init.d/php-fpm start

Настройка PHP-FPM и Nginx чтобы они работали вместе

Файл конфигурации для Nginx находится в  /webserver/nginx/conf/nginx.conf. Для редактирования nginx.conf введите следующую команду:

# vim /webserver/nginx/conf/nginx.conf

Раскомментируйте следующие строки:

location ~ \.php$ {
root html;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}

Введите следующую команду, чтобы перезапустить Nginx:

# /etc/init.d/nginx restart

Тема «Как установить Nginx И PHP (PHP-FPM) На CentOS 6» завершена и полностью раскрыта!

Добавить комментарий

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

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.