Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757
Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737 Форумы портала PHP.SU :: определить: php установлен как модуль апач, или как CGI ?
Покинул форум
Сообщений всего: 416
Дата рег-ции: Май 2011 Откуда: тифилис
Помог: 5 раз(а)
приветствую, две вопрос:
1) как определить: php установлен как модуль апач, или как CGI ?
настолко понял, если первие три символ, из резyлтата функции php_sapi_name() => cgi, то php установлен как CGI. иначе как модул апач. ето так?
2) если пхп установлен как модул, то в етом случае на каком язике будит написан CGI програма? на перл-е?
Покинул форум
Сообщений всего: 9095
Дата рег-ции: Июнь 2007 Откуда: Berlin
Помог: 707 раз(а)
1. Не совсем так, но есть список, который будет возвращаться этой функцией - по нему можно определить, cgi это или нет (разумеется, если скрипт исполняется под управлением веб-сервера, а не, скажем, через консоль) - список можно увидеть здесь: http://ru2.php.net/manual/en/fun...hp-sapi-name.php
2. Вы, вероятно, не правильно понимаете смысл CGI. CGI=Common Gateway Interface, то есть шлюз между интерпретатором и веб-сервером, тогда как модуль непосредственно загружается как библиотека в приложение (процесс) самого веб-сервера. По сути, это разные способы организации, однако язык всегда будет PHP
----- Есть в мире две бесконечные вещи - это Вселенная и человеческая глупость. Но насчет первой .. я не уверен.
dadli
Отправлено: 28 Февраля, 2012 - 15:34:14
Посетитель
Покинул форум
Сообщений всего: 416
Дата рег-ции: Май 2011 Откуда: тифилис
Помог: 5 раз(а)
EuGen
1) список в каком случае будит? со мнои вернёт строки, то есть на домашном компютере установлен мне денвер, и там етот функця вернёт: "apache2handler", а есть еше реални "бесплатни" хостинг и там вернёт "cgi".
2) понятно.
еше один вопрос: что лучшее, когда пхп установлен как модул или когда пхп CGI ?
EuGen
Отправлено: 28 Февраля, 2012 - 16:11:04
Профессионал
Покинул форум
Сообщений всего: 9095
Дата рег-ции: Июнь 2007 Откуда: Berlin
Помог: 707 раз(а)
1. Если вернулся cgi - значит, php 100% установлен как cgi
2. У каждого способа свои преимущества, однако я рекомендую устанавливать как модуль веб-сервера.
CGI плох в основном тем, что каждый раз веб-сервер взаимодействует с исполняемым файлом php; тот, в свою очередь, загружает(перечитывает) php.ini, все свои модули (такие как php_mysql, php_mbstring и т.п.) - то есть много накладной работы каждый раз. Это, правда, может рассматриваться и как преимущество - ведь для изменения параметров PHP достаточно изменить php.ini и веб-сервер уже не нужно перезапускать, т.к. при следующем исполнении скрипта php.ini перечитается. Однако если важна скорость, то загрузка php как модуля веб-сервера дает преимущество.
----- Есть в мире две бесконечные вещи - это Вселенная и человеческая глупость. Но насчет первой .. я не уверен.
dadli
Отправлено: 28 Февраля, 2012 - 16:33:04
Посетитель
Покинул форум
Сообщений всего: 416
Дата рег-ции: Май 2011 Откуда: тифилис
Помог: 5 раз(а)
EuGen
понятно, спасибо болшое
DeepVarvar
Отправлено: 29 Февраля, 2012 - 11:05:36
Активный участник
Покинул форум
Сообщений всего: 10377
Дата рег-ции: Дек. 2008 Откуда: Альфа Центавра
Помог: 353 раз(а)
EuGen, для полной картины можно упомянуть еще и FastCGI, когда интерпретатор, один раз запустившись ждет когда ему "дадут работу", и не выгружается из памяти, присутствую там в виде демона слушающего порт/сокет.
Естественно после изменения php.ini перезапускать нужно, но не апач, а сам php.
Все гости форума могут просматривать этот раздел. Только зарегистрированные пользователи могут создавать новые темы в этом разделе. Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.