использование mod_fcgid вместо mod_php

использование mod_fcgid вместо mod_php

Что мне нужно сделать, чтобы использовать mod_fcgid вместо mod_php в Ubuntu и CentOS? Каковы основные преимущества и различия между ними?

решение1

mod_php:

  • немного быстрее, чем mod_fcgid
  • работает под управлением процесса httpd
  • иметь доступ к Apache API (de.php.net/manual/en/ref.apache.php)
  • плохо для общего хостинга, так как все домены работают под одним и тем же пользователем

mod_fcgid:

  • скрипты запускаются под нужным вам пользователем (подходит для общего хостинга)
  • повышенная безопасность
  • может запускать не только php
  • вы можете запустить несколько версий PHP, например php4, php5, php5.1, php5.2, php 5.3

решение2

На моей платформе общего хостинга я использую FastCGI для запуска PHP, а не вызываю его напрямую. Они запускают PHP через CGI по умолчанию, а не как модуль, поэтому для меня это был просто вопрос добавления следующего в мой .htaccessфайл:

 AddHandler application/myphp .php
 Action application/myphp /cgi-bin/myphp.fcgi

Далее мне нужно было создать myphp.fcgiскрипт в каталоге cgi-bin, содержащий:

#!/bin/sh

# This ensures PHP doesn't try to run it's own
# process manager.
export PHP_FCGI_CHILDREN=0

# Replace this shell image with a PHP
# image.
exec /path/to/php -c /path/to/my/php.ini

У меня все работает безупречно, а моя хостинговая среда работает в кластере из почти десятка серверов за аппаратным балансировщиком нагрузки.

решение3

cgi = каждый запрос запускает процесс и возвращает результаты клиенту fcgi = приложение (например, Ruby/Django) или интерпретатор (PHP) продолжает работать, а веб-сервер пересылает запросы и получает от него ответы.

FastCGI почти всегда быстрее (для вещей, которые его поддерживают), однако некоторые очень древние вещи (например, nagios) нуждаются в cgi. Единственное реальное преимущество cgi в том, что там, где нет скриптов трафика, cgi-приложение не использует память, но обычно веб-сервер достаточно умен, чтобы закрыть FastCGI-приложение, которое не используется в течение некоторого времени, так что это не реальное преимущество

Связанный контент