24.07.2008

Недостатки и большие достоинства php в режиме fastcgi

Недостатки и большие достоинства php в режиме fastcgi

В этой статье поговорим о том, что представляет собой для простого пользователя хостинг php и почему лучше выбрать хостера, у которого php работает в cgi/fastcgi режиме, не смотря на некоторые недостатки cgi-рeжима работы php. Производительность данного решения не рассматриваем, так как о производительности должен заботиться сам хостер.

Выбор php хостинга

Итак, на что же обычный пользователь прежде всего обращает внимание при выборе php-хостинга? Конечно, необходимо, чтоб работали все функции в php и не были включены режимы safe_mode и open_basedir. Но, к сожалению таких полностью идеальных случаев на хостингах не бывает, а если и есть, то лучше, как это ни парадоксально, не брать там хостинг.

Вы можете спросить, почему же так?

А все довольно просто - такой полностью идеальный случай может быть только, если на хостинге используется mod_php при включенных всех функциях и выключенных safe_mode и open_basedir.

И что же тут плохого?

В этом случае возникает другая проблема - если php работает как mod_php, то все скрипты всех пользователей хостинга работают от пользователя apache и любой пользователь хостинга может прочитать php-скриптами любой файл у своих соседей по серверу, к примеру, такой функцией как fopen и подобными функциями открытия и чтения файлов, что при использовании общеизвестных систем управления контентом (CMS) может быть довольно фатально - догадаться, в каком именно файле лежат и прочитать пароли на mysql-базы будет довольно просто.

Вы можете сказать - но как же так, ведь хостеры не дураки, должны ведь быть способы ограничения пользователей при использовании mod_php?

Да, конечно, такие способы есть - это safe_mode, open_basedir, отключение работы "опасных" функций типа fopen() или установка специальных модулей на apache, которые заставляют скрипты пользователей работать не от юзера apache, а от пользователей. Но, к сожалению, у этих способов есть огромные недостатки - отключение "опасных" функций, safe_mode, open_basedir ограничивают пользователя в использовании многих CMS и скриптов, а модули к apache, которые позволяют работать скриптам от пользователей хостинга (такие как mpm-itk, mpm-peruser) имеют много проблем, не поддерживаются разработчиками apache и являются своеобразными "хаками", что ограничивает их использование на серьезных хостинговых серверах.

PHP в режиме CGI / FastCGI

Но все-же выход с этого положения существует - можно использовать php в режиме cgi / fastcgi. Тогда скрипты работают с правами пользователей хостинга, чужие скрипты они читать / запускать не могут, то есть, в этом случае безопасность работы очень высокая. Такие режимы работы поддерживаются разработчиками apache и php, таким образом, такое решение вполне работоспособное и хорошо оттестированное. Но, конечно же, есть и недостатки такого решения - в режиме cgi / fastcgi apache передает все запросы к php-скриптам интерпретатору php, тот уже обрабатывает скрипт и отдает ответ apache. Но apache передает не все заголовки php, не работают php-флаги (php_value и т.п.) в .htaccess, также не совсем полнофункционально работает mod_rewrite. Но эти все проблемы решаемы - при использовании php в режиме cgi обычно дается возможность редактирования собственного php.ini, который интерпретатор php будет использовать вместо серверного.

Приоритет выбора конечно перед пользователем, но он не должен опрометчиво "с наскоку" или "понаслышке" решать, что ему требуется, а должен понимать, что хостер не может сделать все на столько идеально, чтоб была и безопасность на высоте и абсолютно все скрипты работали, что в тестах на локалхосте работают, так как локалхост - не реальный хостинговый аккаунт и хостер на своем сервере должен обеспечить не только работу ваших сайтов на аккаунте, но и подумать о том, чтобы пользователи на этом сервере не могли своим соседям создавать никаких проблем.

Последние новости

Скидка на все домены Украины до 21.10.2022!
14.10.2022
Скидка на все домены Украины до 21.10.2022!
Уважаемые пользователи! Целую неделю у нас скидка -15% на регистрацию всех украинских доменов по промокоду defendersday22!
Подорожание ряда украинских доменов UA ccTLD!
28.09.2022
Подорожание ряда украинских доменов UA ccTLD!
Уважаемые пользователи! С 1 октября 2022 нас ждет подорожание в ряде украинских доменов - in.ua, od.ua, mk.ua!
Важные изменения в работе ряда украинских доменных имен!
09.03.2022
Важные изменения в работе ряда украинских доменных имен!
Уважаемые пользователи! В некоторых украинских доменных зонах увеличен срок периода Redemption с 30 до 60 дней.
Существенное подорожание выделенных IP-адресов (IPv4) в Германии!
09.08.2021
Существенное подорожание выделенных IP-адресов (IPv4) в Германии!
Уважаемые пользователи! В Германии существенно подорожали дополнительные выделенные IP-адреса (IPv4) и IP-сети.

Последнее в блоге

Коронавирус Coronavirus (COVID-19) и кибермошенники в сети Интернет
02.03.2020
Коронавирус Coronavirus (COVID-19) и кибермошенники в сети Интернет
Паника вокруг коронавируса COVID-19 используется кибермошенниками в сети Интернет - фишинг, продажа масок, вакцин и тестов.
Не отправляется почта - проверяем не блокирует ли провайдер 25 порт
11.01.2020
Не отправляется почта - проверяем не блокирует ли провайдер 25 порт
Проверяем блокирует ли провайдер 25 порт с помощью командной строки в ОС Windows. Как отправлять почту если 25 порт заблокирован.
Как установить Clam AntiVirus (ClamAV) на VPS или сервер с ОС CentOS
11.11.2019
Как установить Clam AntiVirus (ClamAV) на VPS или сервер с ОС CentOS
Устанавливаем Clam AntiVirus (ClamAV) на VPS / VDS или выделенный сервер с ОС CentOS и настраиваем ежедневное сканирование сервера.
ISPmanager больше не поддерживает резервное копирование в Яндекс.Диск
20.10.2019
ISPmanager больше не поддерживает резервное копирование в Яндекс.Диск
В течении недели Яндекс.Диск исчезнет из списка хранилища для резервного копирования в панеле ISPmanager и других продуктах ISPsystem.