PHP e suexec no Debian Stretch

0

Estou tentando obter o suexec trabalhando com o PHP no Debian Stretch (Apache 2.4.25).

Eu tenho o conjunto de módulos padrão do pacote Debian carregado mais cgid e php7.0 .

Este é o bloco VirtualHost que estou usando no meu sistema de teste:

<VirtualHost *:80>
        ServerAdmin webmaster@localhost
        DocumentRoot /var/www

        ErrorLog ${APACHE_LOG_DIR}/error.log
        CustomLog ${APACHE_LOG_DIR}/access.log combined

        ScriptAlias /cgi-bin/ /var/www/cgi-bin/
        <Directory "/var/www/cgi-bin">
                AllowOverride None
                Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
                Require all granted
        </Directory>
        SuexecUserGroup testuser testuser
</VirtualHost>

Isso funciona corretamente com um script perl simples em /var/www/cgi-bin que imprime o UID do processo. O script imprime 1000 , verificando se o suexec está funcionando. Eu também recebo a linha esperada em suexec.log :

[2017-07-28 11:54:27]: uid: (1000/testuser) gid: (1000/testuser) cmd: moo.cgi

No entanto, quando eu uso um script PHP semelhante, suexec nunca é chamado e o script é executado como o usuário do Apache.

Como posso fazer com que o suexec funcione com scripts PHP?

    
por Flup 28.07.2017 / 13:01

1 resposta

0

O módulo php7.0 habilitado lida com suas páginas PHP. Desative-o, instale o php-cgi e ative-o como

AddHandler cgi-handler .php
Action cgi-handler /usr/bin/php-cgi7.0
    
por 29.07.2017 / 00:14