[Comm] php as cgi

Eugene Prokopiev =?iso-8859-1?q?john_=CE=C1_rmts=2Edonpac=2Eru?=
Пн Май 31 21:30:45 MSD 2004


Klimchev Konstantin пишет:

>>Action appication/x-httpd-php /bin/php-cgi
> 
> ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
> это не опечатка (я про /bin/php-cgi)?

нет, так надо :)

> suexec -V ?

# suexec -V
  -D DOC_ROOT="/home"
  -D GID_MID=100
  -D HTTPD_USER="apache"
  -D LOG_EXEC="/var/log/httpd/suexec_log"
  -D SAFE_PATH="/usr/local/bin:/usr/bin:/bin"
  -D UID_MID=100
  -D USERDIR_SUFFIX="public_html"

Правильно ли я понимаю, что это означает, что:

1. Папки пользователей должны лежать только в /home
2. Содержимое виртуальных хостов должно лежать в /home/user/public_html

?

Создаю следующую структуру:

# ls -l | grep web3
drwxrwx---    3 web3     web3           80 May 31 20:13 web3
# ls -l web3/
total 1
drwxrwx---    2 web3     web3          112 May 31 20:14 public_html
# ls -l web3/public_html/
total 8
-rw-rw----    1 web3     web3          191 May 31 20:14 index.html
-rw-rw----    1 web3     web3           17 May 31 20:08 index.php

Описываю виртуальный хост:

<VirtualHost 192.168.1.1>
   User web3
   Group web3
   ServerName web3.athlon.home
   DocumentRoot /home/web3/public_html
</VirtualHost>

Перезапускаю Apache и пытаюсь обратиться к http://web3.athlon.home, 
получаю 500 Internal Server Error, а в логах:

# cat /var/log/httpd/access_log
192.168.1.1 - - [31/May/2004:20:57:29 +0400] "GET /index.php HTTP/1.1" 
500 629
# cat /var/log/httpd/error_log
[Mon May 31 20:57:29 2004] [error] [client 192.168.1.1] Premature end of 
script headers: /home/bin/php-cgi
# cat /var/log/httpd/suexec_log
[2004-05-31 20:57:29]: info: (target/actual) uid: (web3/web3) gid: 
(web3/web3) cmd: php-cgi
[2004-05-31 20:57:29]: error: target uid/gid (1002/1002) mismatch with 
directory (0/0) or program (0/0)

> ЗЫ. Я порекомендую посмотреть на suphp (suphp.org) - сейчас усилено тестирую. Как раз для запуска php-cgi-скриптов от пользователя. 

Как-то пару месяцев назад я с Вами это уже обсуждал в сизифовской 
рассылке, то я так и не уяснил для себя (в том числе и из документации 
на suphp.org): чем в принципе suphp лучше? Только заточкой под php? А 
что там может быть заточено? Это же всего лишь средство запуска внешнего 
бинарника. Какие тут у php особенности?

> Я бы еще порекомендовал патчи на suexec (http://www.localhost.nl/patches/, http://phil.kodezone.com/opensource/patches/), но автор на них "положил" и рекомендует suphp.

спасибо, погляжу. Так забил он на свои патчи или он же автор suexec и на 
него положил тоже? Это меняет дело ;)

Вы suphp в пакет случайно не заворачивали?

-- 
С уважением, Прокопьев Евгений




Подробная информация о списке рассылки community