php как модуль apache или cgi



Php как модуль apache или cgi

Автор DITER задал вопрос в разделе Интернет

на одном платном хостинге - php работает как CGI -- чем это лучше ?? и получил лучший ответ

Ответ от Cheery[гуру]
GGI - самый старый способ запуска скриптов (в том числе и php). В этом случае на каждый хит запускается интерпретатор php как самостоятельное приложение и ему отдаётся скрипт для запуска. Скрипт должен вернуть заголовки, затем код html страницы. После этого интерпретатор прекращает свою работу.
Модуль Apache - в этом случае php постоянно находится в памяти веб сервера, не тратится время на запуск интерпретатора.
FastCGI - эволюция CGI интерфейса, в этом случае php запускается отдельным процессом, но после выполнения скрипта не прекращает свою работу.
Как CGI, так и FastCGI работают независимо от веб сервера. А это значит что если происходит какая-то ошибка, веб сервер не получает заголовки от скрипта и возвращает нам в ответ "Ошибка 500 на стороне сервера". Чтобы узнать какая произошла ошибка, надо смотреть логи сервера, к которым далеко не всегда есть прямой доступ у пользователя. В случае модуля Apache ошибка может сразу отобразиться на экране (если включен вывод ошибок) и отладка скриптов осуществляется гораздо проще и быстрее.
В CGI/FastCGI режимах есть проблема с авторизацией HTTP, как следствие - проблема с интеграцией с 1С, есть и другие специфические проблемы.
При загрузке в Apache модуля php мы получаем замечательную возможность менять на лету некоторые настройки php через .htaccess, в CGI/FastCGI опять же получим ошибку 500.
Основной довод сторонников CGI/FastCGI - это безопасность. Т. к. php работает как отдельное приложение - пользователи хостинга на системном уровне отделены друг от друга, а в режиме модуля существует гипотетическая возможность ломать соседние сайты на хостинге. Отчасти это так, но на сегодняшний день существуют определённые механизмы защиты и по опыту техподдержки могу сказать, что основную проблему безопасности пользователей представляют трояны, которые воруют пароли ftp и вживляют паразитный код на сайты.
Хостеры часто используют CGI т. к. в этом случае гораздо удобнее управлять [читать: резать] ресурсами пользователей. И в итоге получаем "непонятные ошибки".
Выводы:
1) Выбирайте CGI режим если ваш сайт посвящён восточной философии и время загрузки страниц посетителей сайта не волнует.
2) FastCGI даёт хорошие результаты по производительности, но ему присущи проблемы CGI режима, а это постоянные ошибки сервера "500".
3) В остальных случаях рекомендую использовать php как модуль Apache. Особенно если речь идёт о выделенном сервере или VPS.
4) Обязательно обращайте внимание на акселератор php. К сожалению, многие хостеры не уделяют этому вопросу должного внимания.
5) И вот ещё важный момент: не выбирайте в качестве хостера соседа по лестничной клетке, порой элементарное неумение настроить систему приносит больше проблем, чем всё остальное. Выбирайте профессионалов.
ps: на своих выделенных серверах я предпочитаю как модуль + eAccelerator
Источник:

Ответ от Ёлужба поддержки[гуру]
или апач выполняет пхп как сги скрипты или ты че то не понял или там пхп скриптам не место)
если хочешь иди ко мне на хостинг)

Ответ от Виктор Тюрин[гуру]
Это ни чем не лучше, а в некоторых случаях даже намного хуже.
Лучше всего использовать php как модуль Apache.

Ответ от 3 ответа[гуру]
Привет! Вот подборка тем с ответами на Ваш вопрос: на одном платном хостинге - php работает как CGI -- чем это лучше ??
спросили в Apache
Что такое скрипты? И для чего они нужны? Что такое PHP скрипты?
Скриптовый язык (англ. scripting language, также называют язык сценариев) — язык программирования,
подробнее...
спросили в Начинка
Хочу научиться создавать сайты! С чего начать?
Для начала нужно почитать какую-нибудь книжку по языку разметки вэб-страниц HTML и установить на
подробнее...

не заходит на сайт ЕГЭ ege.vrn.ru ошибка 502. Что это и почему?
Ошибка 502 Bad Gateway nginx. Как исправить

Эта статья поможет разобраться, почему на
подробнее...
Ответ от 3 ответа[гуру]
Привет! Вот еще темы с похожими вопросами:
спросили в Интернет Gett
что значит? 502 Bad Gateway nginx/1.0.4
Эта статья поможет разобраться, почему на сайтах время от времени появляется ошибка 502 Bad Gateway
подробнее...
спросили в Другое Модули Perl
что такое хостинг?
Хостинг - это размещение Вашего сайта на нашем сервере с предоставлением всех необходимых
подробнее...

что такое хостинг и где его взять?
Хочешь ты например дело своё открыть. А у тебя нет сервака, выделенки, опыта, и т. д. Но есть n-ое
подробнее...
CGI на Википедии
Посмотрите статью на википедии про CGI
 

Ответить на вопрос:

Имя*

E-mail:*

Текст ответа:*
Проверочный код(введите 22):*