
Как установить 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
Так же может выскочить еще ошибка:
Исправляем мы это следующим образом:
# 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» завершена и полностью раскрыта!