ИТ Блог. Администрирование серверов на основе Linux (Ubuntu, Debian, CentOS, openSUSE)

Как установить Lighttpd с PHP-FPM и MariaDB на CentOS 7 – Страница 2.

Lighttpd with PHP-FPM and MariaDB on CentOS 7

На этой странице

5 Настройка Lighttpd и PHP

Чтобы включить PHP в Lighttpd, мы должны изменить два файла, /etc/php.ini и /etc/lighttpd/lighttpd.conf. Во- первых мы открываем /etc/php.ini и разкомментируем строку cgi.fix_pathinfo = 1 :

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=1
[...]

 

Затем мы открываем /etc/lighttpd/modules.conf и раскомментируем линию include “conf.d/fastcgi.conf :

nano /etc/lighttpd/modules.conf

 

[...]
##
## FastCGI (mod_fastcgi)
##
include "conf.d/fastcgi.conf"
[...]

 

Следующим открываем /etc/lighttpd/conf.d/fastcgi.conf :

nano /etc/lighttpd/conf.d/fastcgi.conf

 

Там в fastcgi.server строка – оставьте комментарий и добавим свой собственный fastcgi.server следующим образом :

[...]
## PHP Example
## For PHP don't forget to set cgi.fix_pathinfo = 1 in the php.ini.
##
## The number of php processes you will get can be easily calculated:
##
## num-procs = max-procs * ( 1 + PHP_FCGI_CHILDREN )
##
## for the php-num-procs example it means you will get 17*5 = 85 php
## processes. you always should need this high number for your very
## busy sites. And if you have a lot of RAM. :)
##


fastcgi.server += ( ".php" =>
        ((
                "host" => "127.0.0.1",
                "port" => "9000",
                "broken-scriptfilename" => "enable"
        ))
)

#fastcgi.server = ( ".php" =>
#                   ( "php-local" =>
#                     (
#                       "socket" => socket_dir + "/php-fastcgi-1.socket",
#                       "bin-path" => server_root + "/cgi-bin/php5",
#                       "max-procs" => 1,
#                       "broken-scriptfilename" => "enable",
#                     )
#                   ),
[...]

 

Теперь мы перезапустим Lighttpd:

systemctl restart  lighttpd.service

 

 

6 Тестирование PHP / Получение более полной информации о вашей установки PHP5

Корень документа веб – сайта по умолчанию /var/www/htdocs/. Теперь мы создадим небольшой PHP – файл ( info.php ) в этой директории и вызовем его в браузере. Файл будет отображать множество полезных деталей о нашей установке PHP, таких как установленной версии PHP.

nano /var/www/htdocs/info.php

 

<?php
phpinfo();
?>

 

Теперь мы вызовем этот файл в браузере (например , http://192.168.1.110/info.php ):

Тестирование PHP. Получить более полную информацию о вашей установеи PHP5

Как вы видите, PHP работает, и он работает через FPM/FastCGI, как показано на линии Server API . Если прокрутить дальше вниз, вы увидите все модули, которые уже включены в PHP. MySQL отсутствует в списке, что означает, что мы не имеем поддержку MySQL, в PHP пока его нет .

 

7 Получение поддержки MySQL в PHP

Чтобы получить поддержку MySQL в PHP, мы можем установить пакет php-mysql. Это хорошая идея установить некоторые другие модули PHP, а также может понадобиться они для ваших приложений. Вы можете выполнить поиск доступных PHP5 модулей:

yum search php

 

Выберите те, что вам нужно, и установите их следующим образом:

yum -y install php-mysql php-gd php-imap php-ldap php-odbc php-pear php-xml php-xmlrpc

 

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

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

yum -y install php-pecl-apc

 

Теперь загрузите PHP-FPM:

systemctl reload php-fpm.service

 

Теперь откройте http://192.168.1.110/info.php в вашем браузере и прокрутите вниз до раздела модулей. Теперь вы должны найти много новых модулей там, включая модуль MySQL:

Получение поддержки MySQL в PHP

 

8 Создание PHP-FPM для использования сокета Unix

По умолчанию PHP-FPM прослушивает порт 9000 на 127.0.0.1 . Кроме того, можно сделать PHP-FPM использовать сокет Unix, который позволяет обойтись без накладных расходов TCP. Чтобы сделать это, откройте /etc/php-fpm.d/www.conf

nano /etc/php-fpm.d/www.conf

 

… И сделать строку listen  следующим образом :

[...]
;listen = 127.0.0.1:9000
listen = /tmp/php5-fpm.sock
[...]

 

Затем перезагрузите PHP-FPM:

systemctl reload php-fpm.service

 

Затем откройте файл конфигурации PHP LightTPD в /etc/lighttpd/conf.d/fastcgi.conf и заменить host и port линии на “socket” => “/tmp/php5-fpm.sock :

nano /etc/lighttpd/conf.d/fastcgi.conf

 

fastcgi.server += ( ".php" =>
        ((
                "socket" => "/tmp/php5-fpm.sock",
                "broken-scriptfilename" => "enable"
        ))
)

 

Наконец перезапустите Lighttpd:

systemctl restart  lighttpd.service

 

Exit mobile version