
Установка 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 завершена. Если что то не понятно, то пишите мне, я смогу помочь!