Установил Apache+suexec+php и все нормально за исключением пользователя из под которого php создает файлы! Сервер у меня запущен из под пользователя www и файлы из php создаются не из под пользователя указанного в конфиге виртуального сервера, а из под упомянутого www. Кто-нибудь знает как научить php записывать файлы из под указанного в конфиге пользователя?
>Установил Apache+suexec+php и все нормально за исключением пользователя из под которого php
>создает файлы! Сервер у меня запущен из под пользователя www и
>файлы из php создаются не из под пользователя указанного в конфиге
>виртуального сервера, а из под упомянутого www. Кто-нибудь знает как научить
>php записывать файлы из под указанного в конфиге пользователя?Вероятно, php работает через mod_php.
Тогда можно:
1. Запускать php как cgi.
2. Использовать suphp.
>>Установил Apache+suexec+php и все нормально за исключением пользователя из под которого php
>>создает файлы! Сервер у меня запущен из под пользователя www и
>>файлы из php создаются не из под пользователя указанного в конфиге
>>виртуального сервера, а из под упомянутого www. Кто-нибудь знает как научить
>>php записывать файлы из под указанного в конфиге пользователя?
>
>Вероятно, php работает через mod_php.
>Тогда можно:
>1. Запускать php как cgi.
Про этот способ я знаю.
>2. Использовать suphp.
Можно немного поподробнее рассказать с чем это едят :-)
>>2. Использовать suphp.
>Можно немного поподробнее рассказать с чем это едят :-)www.suphp.org
просто поставить и добавить пару строчек в конфиг апача - в его доке нормально описано.
Работает и не жужит.
>>>2. Использовать suphp.
>>Можно немного поподробнее рассказать с чем это едят :-)
>
>www.suphp.org
>просто поставить и добавить пару строчек в конфиг апача - в его
>доке нормально описано.
>Работает и не жужит.Что-то не хочет работать. Посмотрите пожалуйста в чем я лопухнулся!
Софт:
apache_1.3.33rusPL30.21
suphp-0.5 .2
php-4.3 .10установка suphp-0.5
./configure --prefix=/usr --with-apxs=/usr/local/apache/bin/apxs --with-logfile=/var/log/apache/suphp.log --with-setid-mode=owner
make all
make installapache conf
LoadModule suphp_module libexec/mod_suphp.so
AddModule mod_suphp.csuPHP_Engine on
suPHP_ConfigPath /usr/local/lib/php/php.iniВроде все по доке, но не происходит ничего нового и в логах пустота. Apace запускается без ошибок.
>apache conf
>
>LoadModule suphp_module libexec/mod_suphp.so
>AddModule mod_suphp.c
>
>suPHP_Engine on
>suPHP_ConfigPath /usr/local/lib/php/php.iniУ меня Апач 2.0 и мне лень лезть в доку на 1.3, поэтому просто смотрю в свой конфиг :)
Добавь, если оно работает в 1.3:
AddHandler application/x-httpd-php .php
И удали все упоминания о php4_module.
Потом в конфиг виртуального хоста впиши:
<VirtualHost ...>
suPHP_UserGroup some_user some_group
</VirtualHost>
>>apache conf
>>
>>LoadModule suphp_module libexec/mod_suphp.so
>>AddModule mod_suphp.c
>>
>>suPHP_Engine on
>>suPHP_ConfigPath /usr/local/lib/php/php.ini
>
>У меня Апач 2.0 и мне лень лезть в доку на 1.3,
>поэтому просто смотрю в свой конфиг :)
>
>Добавь, если оно работает в 1.3:
>
>AddHandler application/x-httpd-php .php
Добавил.>
>И удали все упоминания о php4_module.
Как только я адалил строчки
LoadModule php4_module libexec/libphp4.so
AddModule mod_php4.c
скрипты стали отображаться текстом.
>
>Потом в конфиг виртуального хоста впиши:
>
><VirtualHost ...>
> suPHP_UserGroup some_user some_group></VirtualHost>
Добавил в описание виртуальника следующее:<VirtualHost x.x.x.x>
ServerAdmin webmaster@x.x
DocumentRoot /usr/webhome/xx
ServerName test.x.x
Options -ExecCGI -Includes
User stat
Group stat
suPHP_UserGroup stat stat
ErrorDocument 404 /index.htm
ErrorLog /var/log/apache/test.x.x/error_log
CustomLog /var/log/apache/test.x.x/access_log combined
ScriptAlias /cgi-bin/ "/usr/webhome/xx/cgi-bin/"</VirtualHost>
и получил Syntax error Invalid command 'suPHP_UserGroup', perhaps mis-spelled or defined by a module no
t included in the server configuration
./apachectl start: httpd could not be started...
Может я модуль не установил до конца?? Как ставил описывал выше. т к в логах ни слова. phpinfo() пишет, что модуль установлен.
---
Httpd -lCompiled-in modules:
http_core.c
mod_charset.c
mod_so.c
mod_realip.c
mod_deflate.c
suexec: enabled; valid wrapper /usr/local/apache/bin/suexec
---
тут модуля нет... Посмотрите может я облажался в установке.установка suphp-0.5
./configure --prefix=/usr --with-apxs=/usr/local/apache/bin/apxs --with-logfile=/var/log/apache/suphp.log --with-setid-mode=owner
make all
make installЯ ему четко указал лог, но он в него не пишет, значит модуль не запускается. В общем я совсем защел в тупик.
>>>apache conf
>>>
>>>LoadModule suphp_module libexec/mod_suphp.so
>>>AddModule mod_suphp.c
>>>
>>>suPHP_Engine on
>>>suPHP_ConfigPath /usr/local/lib/php/php.ini
>>
>>У меня Апач 2.0 и мне лень лезть в доку на 1.3,
>>поэтому просто смотрю в свой конфиг :)
>>
>>Добавь, если оно работает в 1.3:
>>
>>AddHandler application/x-httpd-php .php
>Добавил.
>
>>
>>И удали все упоминания о php4_module.
>Как только я адалил строчки
>LoadModule php4_module libexec/libphp4.so
>AddModule mod_php4.c
>скрипты стали отображаться текстом.
>>
>>Потом в конфиг виртуального хоста впиши:
>>
>><VirtualHost ...>
>> suPHP_UserGroup some_user some_group
>
>></VirtualHost>
>Добавил в описание виртуальника следующее:
>
><VirtualHost x.x.x.x>
> ServerAdmin webmaster@x.x
> DocumentRoot /usr/webhome/xx
> ServerName test.x.x
> Options -ExecCGI -Includes
> User stat
> Group stat
> suPHP_UserGroup stat stat
> ErrorDocument 404 /index.htm
> ErrorLog /var/log/apache/test.x.x/error_log
> CustomLog /var/log/apache/test.x.x/access_log combined
> ScriptAlias /cgi-bin/ "/usr/webhome/xx/cgi-bin/"
>
></VirtualHost>
>
>и получил Syntax error Invalid command 'suPHP_UserGroup', perhaps mis-spelled or defined by
>a module no
>t included in the server configuration
>./apachectl start: httpd could not be started
>
>...
>
>Может я модуль не установил до конца?? Как ставил описывал выше. т
>к в логах ни слова. phpinfo() пишет, что модуль установлен.
>---
>Httpd -l
>
>Compiled-in modules:
> http_core.c
> mod_charset.c
> mod_so.c
> mod_realip.c
> mod_deflate.c
>suexec: enabled; valid wrapper /usr/local/apache/bin/suexec
>---
>тут модуля нет... Посмотрите может я облажался в установке.
>
>установка suphp-0.5
>./configure --prefix=/usr --with-apxs=/usr/local/apache/bin/apxs --with-logfile=/var/log/apache/suphp.log --with-setid-mode=owner
>make all
>make install
>
>Я ему четко указал лог, но он в него не пишет, значит
>модуль не запускается. В общем я совсем защел в тупик.Попробывал вкомпелить модуль в Апач и вот что получилось:
1. При запуске ругается:
Syntax error on line 248 of /usr/local/apache/conf/httpd.conf:
module suphp_module is built-in and can't be loaded
./apachectl start: httpd could not be startedлиния 248 содержит
LoadModule suphp_module /patch/to/mod_suphp.so2. Если закоментировать, то начиает ругаться на строчки активации работы модуля: suPHP_Engine on
Это уже интерестнее. Подскажите что я не учел!
>Попробывал вкомпелить модуль в Апач и вот что получилось:
>1. При запуске ругается:
>Syntax error on line 248 of /usr/local/apache/conf/httpd.conf:
>module suphp_module is built-in and can't be loaded
>./apachectl start: httpd could not be started
>
>линия 248 содержит
>LoadModule suphp_module /patch/to/mod_suphp.so
>
>2. Если закоментировать, то начиает ругаться на строчки активации работы модуля: suPHP_Engine
>on
>
>Это уже интерестнее. Подскажите что я не учел!Выглядит так, как будто ты совсем запутался :)
1) Модуль можно вкомпилить и тогда его будет видно по "httpd -l"
ИЛИ
его можно загрузить с помощью LoadModule - эти возможности взаимоисключающие.
2) Модуль надо активировать с помощью AddModule - в (почти) любом случае.
>>Попробывал вкомпелить модуль в Апач и вот что получилось:
>>1. При запуске ругается:
>>Syntax error on line 248 of /usr/local/apache/conf/httpd.conf:
>>module suphp_module is built-in and can't be loaded
>>./apachectl start: httpd could not be started
>>
>>линия 248 содержит
>>LoadModule suphp_module /patch/to/mod_suphp.so
>>
>>2. Если закоментировать, то начиает ругаться на строчки активации работы модуля: suPHP_Engine
>>on
>>
>>Это уже интерестнее. Подскажите что я не учел!
>
>Выглядит так, как будто ты совсем запутался :)
>1) Модуль можно вкомпилить и тогда его будет видно по "httpd -l"
>
> ИЛИ
> его можно загрузить с помощью LoadModule - эти возможности
>взаимоисключающие.
>2) Модуль надо активировать с помощью AddModule - в (почти) любом случае.
>
1) Вкомпелил модуль в Апач и вижу его по запросу httpd -l.
2) Добавил его с помощью AddModule в конфиг апачи
3) Отключил модуль ПХП в конфиге.И после этого я увидел полное отсутствии пхп интерпритатора в апаче.
Вы правы! Я что-то совсем запутался. Вы не посмотрите мой конфиг.. может я что-то там нупутал? Мой почтовый адресс load()lipetsk.ru
>Вы правы! Я что-то совсем запутался. Вы не посмотрите мой конфиг.. может
>я что-то там нупутал? Мой почтовый адресс load()lipetsk.ruМожешь, конечно послать мне конфиг на dev@26th.net, но 1.3 Апачей у меня давно нет, поэтому особо много не подскажу.