Установка Nginx с расширениями php5 и с поддержкой MySQL на CentOS

Установка Nginx с расширениями php5 и с поддержкой MySQL на CentOS

Nginx (произносится как энжинкс, «двигатель») является свободным и с открытым исходным кодом, высокопроизводительный HTTP-сервер с обратный прокси, а также с IMAP/POP3 прокси-сервером. Игорь Сысоев начал разработку Nginx в 2002 году, первый публичный релиз был в 2004 году. Nginx в настоящее время используется почти в 12,18% (22.2M) активных центров во всех областях. Nginx известен своей высокой производительностью, стабильностью, большим набором функций, простой в конфигурировании и с низким потреблением ресурсов. Дня начала нужно подключить репозитории EPEL и REMI.

Установка Yum приоритетов

# yum install yum-priorities

Оредактировать  /etc/yum.repos.d/epel.repo и добавить priority=10 (приоритет 10) в раздел [epel]:

[epel]
name=Extra Packages for Enterprise Linux 6 - $basearch
#baseurl=http://download.fedoraproject.org/pub/epel/6/$basearch
mirrorlist=https://mirrors.fedoraproject.org/metalink?repo=epel-6&arch=$basearch
failovermethod=priority
enabled=1
priority=10
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6
[...]

Оредактировать  /etc/yum.repos.d/remi.repo и добавить priority=10 (приоритет 10) в раздел [epel]:

# nano /etc/yum.repos.d/remi.repo
[remi]
name=Les RPM de remi pour Enterprise Linux $releasever - $basearch
#baseurl=http://rpms.famillecollet.com/enterprise/$releasever/remi/$basearch/
mirrorlist=http://rpms.famillecollet.com/enterprise/$releasever/remi/mirror
enabled=1
priority=10
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-remi
failovermethod=priority

[remi-test]
name=Les RPM de remi en test pour Enterprise Linux $releasever - $basearch
#baseurl=http://rpms.famillecollet.com/enterprise/$releasever/test/$basearch/
mirrorlist=http://rpms.famillecollet.com/enterprise/$releasever/test/mirror
enabled=0
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-remi

Установка Nginx

Nginx доступен в виде пакета для CentOS 6.4 от EPEL, который мы можем установить следующим образом:

# yum install nginx

Стартанем nginx и добавим его в автозагрузку нашей системы, для этого выполним:

# /etc/init.d/nginx start
# chkconfig nginx on

Установка Server MySQL

# yum install mysql mysql-server -y

Установим для MySQL ‘root’ пароль:

# mysql_secure_installation

Установка PHP5

Мы можем сделать PHP5 работу в Nginx через PHP-FPM (PHP-FPM (FastCGI Process Manager) — это альтернатива для PHP реализации FastCGI с некоторыми дополнительными функциями, полезных для сайтов любого размера, особенно ‘оживленных участках’). Мы можем установить PHP-FPM вместе с PHP-CLI и некоторыми PHP5 модулями, как PHP-MySQL, которые вам приходятся, если вы хотите использовать MySQL в ваших скриптах, для это выполним:

# yum install php-fpm php-cli php-mysql php-gd php-imap php-ldap php-odbc php-pear php-xml php-xmlrpc php-magickwand php-magpierss php-mbstring php-mcrypt php-mssql php-shout php-snmp php-soap php-tidy

APC является свободным и открытым PHP кодом для кэширования и оптимизации промежуточного кода PHP. Он похож на  Eaccelerator и XCache. Настоятельно рекомендуется, чтобы были установлены хотя бы один из них чтобы ускорить страницу PHP.

APC может быть установлен следующим образом:

# yum install php-pecl-apc

Затем откройте /etc/php.ini и  установите cgi.fix_pathinfo = 0:

# nano /etc/php.ini
[...]
; cgi.fix_pathinfo provides *real* PATH_INFO/PATH_TRANSLATED support for CGI. PHP's
; previous behaviour was to set PATH_TRANSLATED to SCRIPT_FILENAME, and to not grok
; what PATH_INFO is. For more information on PATH_INFO, see the cgi specs. Setting
; this to 1 will cause PHP CGI to fix its paths to conform to the spec. A setting
; of zero causes PHP to behave as before. Default is 1. You should fix your scripts
; to use SCRIPT_FILENAME rather than PATH_TRANSLATED.
; http://www.php.net/manual/en/ini.core.php#ini.cgi.fix-pathinfo
cgi.fix_pathinfo=0
[...]

Запустим  php-fpm service и добавим его в автостарт нашей системы для того чтобы он старотовал при запуске нашей системы:

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

Перезапустим сервер ngnix:

# /etc/init.d/nginx reload

Тестирование PHP и нашего сервиса.

Создадим тестовую страницу PHP:

# nano /usr/share/nginx/html/php_info.php

Теперь сохраняем страницу и перейдем по пути для тестирования ( отображения php_info):
http://your_server_url/php_info.php

Установка Nginx с расширениями php5 и с поддержкой MySQL на CentOS завершена. Если что то не понятно, то пишите мне, я смогу помочь!

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

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

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