Установка Apache и PHP как FastCGI на CentOS 6
FastCGI 一 производительный и безопасный протокол, который снимает ряд ограничений CGI. К примеру, FastCGI не создает процессы для того или иного запроса, а использует уже запущенные процессы с целью обработки поступающих запросов.
Разберемся, как установить Apache и PHP как FastCGI. В первую очередь подключите репозиторий EPEL версии, которая соотвествует релизу вашей CentOS:
rpm -ivh http://download.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm |
Установите httpd, php-common, mod_fcgid, php-cgi и php:
yum -y install httpd php-common mod_fcgid php-cgi php |
Установите текстовый редактор nano:
yum install nano -y |
Поскольку модуль mod_php не используется в данном процессе, уберите его файл конфигурации:
mv /etc/httpd/conf.d/php.conf /etc/httpd/conf.d/php.conf.bkp |
Откройте файл /etc/httpd/conf.d/fcgid.conf в режиме редактирования:
nano /etc/httpd/conf.d/fcgid.conf |
Добавьте в него строки:
DirectoryIndex index.php PHP_Fix_Pathinfo_Enable 1 |
Откройте файл /etc/php.ini в режиме редактирования:
nano /etc/php.ini |
Раскомментируйте строку:
cgi.fix_pathinfo=1 |
Добавьте нового пользователя при помощи команды useradd:
useradd user |
Создайте папку var/www/php-cgi:
mkdir /var/www/php-cgi |
Создайте в папке var/www/php-cgi каталог для сайта:
mkdir /var/www/php-cgi/mariavps.shn-host.ru |
Создайте файл /var/www/php-cgi/mariavps.shn-host.ru/php.cgi:
nano /var/www/php-cgi/mariavps.shn-host.ru/php.cgi |
Добавьте в него следующий скрипт:
#!/bin/sh PHPRC=/etc/ export PHPRC export PHP_FCGI_MAX_REQUESTS=500 exec /usr/bin/php-cgi |
Установите права:
chmod 755 /var/www/php-cgi/mariavps.shn-host.ru/php.cgi |
Установите владельца:
chown -R user:user /var/www/php-cgi/mariavps.shn-host.ru |
Создайте папку для файлов сайта:
mkdir -p /var/www/vhosts/mariavps.shn-host.ru |
Создайте файл /var/www/vhosts/mariavps.shn-host.ru/index.php:
nano /var/www/vhosts/mariavps.shn-host.ru/index.php |
Добавьте скрипт:
<?php echo phpinfo(); ?> |
Поменяйте пользователя:
chown -R user:user /var/www/vhosts/mariavps.shn-host.ru |
Создайте файл /etc/httpd/conf.d/mariavps.shn-host.ru.conf:
nano /etc/httpd/conf.d/mariavps.shn-host.ru.conf |
Добавьте в него новый виртуальный хост:
<VirtualHost 151.80.213.130:80> DocumentRoot /var/www/vhosts/mariavps.shn-host.ru ServerName mariavps.shn-host.ru ServerAlias www.mariavps.shn-host.ru <IfModule mod_fcgid.c> SuexecUserGroup user user <Directory /var/www/vhosts/mariavps.shn-host.ru> Options +ExecCGI AllowOverride All AddHandler fcgid-script .php FCGIWrapper /var/www/php-cgi/mariavps.shn-host.ru/php.cgi Order allow,deny Allow from all </Directory> </IfModule> </VirtualHost> |
В полях DocumentRoot и Directory укажите папку с файлами сайта. Сохраните изменения и перезагрузите сервер:
service httpd start |
Введите в адресной строке браузера ваш домен/index.php, чтобы убедиться в том, что FastCGI установлен: