Назад | Перейти на главную страницу

suPHP не работает

ОС: Ubuntu 10.04 и т. Д. / Suphp / suphp.conf:

        [global]
    ;Path to logfile
    logfile=/var/log/suphp/suphp.log

    ;Loglevel
    loglevel=info

    ;User Apache is running as
    webserver_user=www-data

    ;Path all scripts have to be in
    docroot=/home

    ;Path to chroot() to before executing script
    ;chroot=/mychroot

    ; Security options
    allow_file_group_writeable=false
    allow_file_others_writeable=false
    allow_directory_group_writeable=false
    allow_directory_others_writeable=false

    ;Check wheter script is within DOCUMENT_ROOT
    check_vhost_docroot=true

    ;Send minor error messages to browser
    errors_to_browser=false

    ;PATH environment variable
    env_path=/bin:/usr/bin

    ;Umask to set, specify in octal notation
    umask=0077

; Minimum UID
min_uid=100


; Minimum GID
min_gid=100


[handlers]
;Handler for php-scripts
application/x-httpd-suphp="php:/usr/bin/php-cgi"

;Handler for CGI-scripts
x-suphp-cgi="execute:!self"

некоторые vhost на сайтах с поддержкой:

NameVirtualHost *:8080

<VirtualHost *:8080>
ServerAdmin ...
ServerName ...
ServerAlias ...
AddType application/x-httpd-php .php
AddHandler application/x-httpd-php .php
suPHP_Engine on
suPHP_UserGroup user  user
suPHP_ConfigPath "/home/user/etc"
suPHP_PHPPath /usr/bin
DocumentRoot /home/user/web/site.com/
ErrorLog /var/log/apache2/site.com-error_log
CustomLog /var/log/apache2/site.com-access_log common
<Directory /home/user/web/site.com/>
Order Deny,Allow
Allow from all
Options +Indexes
</Directory>
</VirtualHost>

Но когда я сделал nano /home/user/web/id.php и вставил

<?php
system('id');
?>

в нем я получаю следующий результат:

uid=33(www-data) gid=33(www-data) groups=33(www-data) 

Понятия не имею, что делать, поэтому я надеялся, что сообщество может помочь

ты.

Единственное, что бросается мне в глаза, это то, что документация говорит suPHP_UserGroup user user заявление действительно только внутри <Directory> ... </Directory>.

РЕДАКТИРОВАТЬ - я настроил это, и он работает - вот что я сделал

я создал /etc/apache2/mods-available/suphp.conf содержащий

<IfModule mod_suphp.c>
AddType application/x-httpd-suphp .php .php3 .php4 .php5 .phtml
suPHP_AddHandler application/x-httpd-suphp
</IfModule>

и /etc/apache2/mods-available/suphp.load содержащий

LoadModule suphp_module /usr/lib/apache2/modules/mod_suphp.so

Я побежал

sudo a2enmod suphp
sudo a2dismod php5

включить suphp и отключить php

мой vhost на сайтах с поддержкой

<VirtualHost *:80>
        ServerAdmin webmaster@localhost
        suPHP_Engine on
        DocumentRoot /var/www
        <Directory />
                Options FollowSymLinks
                AllowOverride None
                suPHP_UserGroup user user
        </Directory>
        .
        . other stuff
        .
</VirtualHost>

/var/www принадлежит user:user Мой /etc/suphp/suphp.conf Функционально такой же, как и ваш. ОС - Ubuntu 10.04