Страница 1 из 4
APACHE+SUEXEC+PHP
Добавлено: 2007-06-16 14:24:31
zheltovodets
Делаю хостинг по
http://www.lissyara.su/?id=1066 и в браузере высвечивает ошибка 500,
error.log
[Sat Jun 16 14:27:03 2007] [error] [client 192.168.1.2] Premature end of script headers: /var/www/hosting/sites/user/cgi-bin/php-cgi
Что это может быть? Как исправить?
Добавлено: 2007-06-16 20:15:13
Alex Keda
Код: Выделить всё
%./php-cgi "<?php ?>"
Status: 404
X-Powered-By: PHP/4.4.7
Content-type: text/html
No input file specified.
%
тоже самое выдаст?
===========
было такое - вот тока причину не помню...
Добавлено: 2007-06-18 9:18:06
zheltovodets
ДА, тоже самое выдает, и что это значит?

Добавлено: 2007-06-18 9:26:36
Alex Keda
php.ini снеси для начала - ка без него будет?
Добавлено: 2007-06-18 11:01:20
zheltovodets
Тот php.ini который находится в папочке cgi-bin удалить не получается
Добавлено: 2007-06-18 11:26:36
Alex Keda
и ещё раз перечитать статью.
Добавлено: 2007-06-18 12:00:27
zheltovodets
Флаги убрал, удалил нечего нового не написало, залил новий php.ini, тоже самое
Добавлено: 2007-06-18 12:50:40
Alex Keda
до этого php на машине был?
если был - снос под чистую с ручной чисткой всех либ и прочего
Добавлено: 2007-06-18 12:53:48
zheltovodets
Небыло собираю новый сервак, устанавливал из портов, включил все что относится к CGI, может нужно еще добавить что-то?
Добавлено: 2007-06-18 13:41:42
Alex Keda
это ты зря.
надо было тока необходимое включать.
Добавлено: 2007-06-18 13:46:06
wizard
Мое личное мнение что php через cgi не гуд!!!
Если нужно сделать нормально делай через fastcgi
Добавлено: 2007-06-18 13:47:02
Alex Keda
напиши сттатью.
думаю, все будут рады.
Добавлено: 2007-06-18 15:03:05
wizard
lissyara писал(а):напиши сттатью.
думаю, все будут рады.
К сожалению не очень у меня получается статьи писать, советом могу помочь, но не статьёй

Добавлено: 2007-06-18 15:17:18
Alex Keda
ну хоть скажи чё ставить и как настраивать, и осоновные грабли - уж на этом стстью напишем сами

Добавлено: 2007-06-18 15:32:26
wizard
1.
Код: Выделить всё
#cd /usr/ports
# make search name=mod_fcgid
Port: mod_fcgid-2.1
Path: /usr/ports/www/mod_fcgid
Info: An alternative FastCGI module for Apache2
Maint: hemi@puresimplicity.net
B-deps: apache-2.0.59 expat-2.0.0_1 libiconv-1.9.2_2 perl-5.8.8
R-deps: apache-2.0.59 expat-2.0.0_1 libiconv-1.9.2_2 perl-5.8.8
WWW: http://fastcgi.coremail.cn/
2.
Код: Выделить всё
# cd /usr/ports/www/mod_fcgid
#make
#make install
#make clean
3.
добовляем
Код: Выделить всё
LoadModule fcgid_module libexec/apache2/mod_fcgid.so
<Directory "/usr/local/www/data">
AllowOverride None
Order allow,deny
Allow from all
Options +ExecCGI
AddHandler fcgid-script .php
SetHandler fcgid-script
FCGIWrapper /home/fcgid-php.sh .php
</Directory>
4,
туда пишем
Код: Выделить всё
#!/bin/sh
export PHP_FCGI_MAX_REQUESTS=0
exec /usr/local/bin/php-cgi
P.S. php должен быть собран как
Код: Выделить всё
$ ./configure \
--enable-fastcgi \
--enable-discard-path \
--enable-force-cgi-redirect \
Последнее действие, это упрощение политики безопасности suEXEC, а
именно удаление проверки запускаемого скрипта (fcgid-php.sh) и
директории в которой он находится (/home) на
соответствие их владельца с пользователем указанным в SuexecUserGroup.
Для этого надо закомментировать строки (566-576 в 2.2.3)
Код: Выделить всё
if ((uid != dir_info.st_uid) ||
(gid != dir_info.st_gid) ||
(uid != prg_info.st_uid) ||
(gid != prg_info.st_gid)) {
log_err("target uid/gid (%ld/%ld) mismatch "
"with directory (%ld/%ld) or program (%ld/%ld)\n", uid, gid,
dir_info.st_uid, dir_info.st_gid,
prg_info.st_uid, prg_info.st_gid);
exit(120);
}
в файле [httpd-2.x]/support/suexec.c и пересобрать suEXEC. Иначе
пришлось бы копировать fcgid-php.sh каждому пользователю и указывать
путь в каждом виртуальном хосте.
Добавлено: 2007-06-18 15:34:22
Alex Keda
ужос нах...
вместо прямого запуска проставку в шелл.
и в чём преимущество?
Добавлено: 2007-06-18 15:39:19
wizard
lissyara писал(а):ужос нах...
вместо прямого запуска проставку в шелл.
и в чём преимущество?
Запусти php в cgi режиме и попробуй сделать авторизацию, и тогда я на тебя посмотрю, а в таком слуаи она прекрастно работает
Добавлено: 2007-06-18 15:44:57
wizard
да и скорость работы значительно выше чем в cgi или mod_php режиме
Добавлено: 2007-06-18 17:02:41
Toptyg
да и скорость работы значительно выше чем в cgi или mod_php режиме
что серьезно быстрее чем mod_php пашет? o_0
Добавлено: 2007-06-18 17:03:48
wizard
если не ошибаюсь то в среднем ~ в 10 быстрее
Добавлено: 2007-06-18 17:14:20
Alex Keda
wizard писал(а):lissyara писал(а):ужос нах...
вместо прямого запуска проставку в шелл.
и в чём преимущество?
Запусти php в cgi режиме и попробуй сделать авторизацию, и тогда я на тебя посмотрю, а в таком слуаи она прекрастно работает
поделись - чё не так с авторизацией.
делал - пашет
Добавлено: 2007-06-18 17:16:19
wizard
lissyara писал(а):wizard писал(а):lissyara писал(а):ужос нах...
вместо прямого запуска проставку в шелл.
и в чём преимущество?
Запусти php в cgi режиме и попробуй сделать авторизацию, и тогда я на тебя посмотрю, а в таком слуаи она прекрастно работает
поделись - чё не так с авторизацией.
делал - пашет
Авторизация сессиями по принципу в cgi режиме работать не будет!!!
Добавлено: 2007-06-19 14:07:55
zheltovodets
Снес php5, поставил php4, тоже самое
Заметил в логах начало писать:
Код: Выделить всё
failed to open log file
fopen: No such file or directory
[Tue Jun 19 14:10:42 2007] [error] [client 192.168.1.2] Premature end of script headers: /var/www/hosting/sites/user/cgi-bin/php-cgi
Для проверки отключил все права никак не хочет работать

Добавлено: 2007-06-20 23:04:25
wizard
zheltovodets писал(а):Снес php5, поставил php4, тоже самое
Заметил в логах начало писать:
Код: Выделить всё
failed to open log file
fopen: No such file or directory
[Tue Jun 19 14:10:42 2007] [error] [client 192.168.1.2] Premature end of script headers: /var/www/hosting/sites/user/cgi-bin/php-cgi
Для проверки отключил все права никак не хочет работать

Ну как дела с хостингом ? Заценить уже где можно ?
Добавлено: 2007-06-21 8:59:48
zheltovodets
Смешно
