Configurar o suPHP num CentOS
Num alojamento web típico, o servidor web corre numa conta separada dos utilizadores de sistema, no meu caso CentOS e Apache. Como tal, uploads são criados com base no utilizador apache retirando qualquer possibilidade de gestão manual dos uploads pelo administrador de domínio sendo necessário recorrer ao chmod 777 * . Como resolver isso? o módulo suPHP permite correr o interpretador PHP com base nas credenciais do administrador.
1. Fazer download do suPHP
Pode encontrar os respectivos RPM em
http://dag.wieers.com.
Para o CentOS 5:
http://dag.wieers.com/rpm/packages/mod_suphp/mod_suphp-0.6.2-1.el5.rf.x86_64.rpm
2. Verificar configuração do /etc/httpd/conf.d/suphp.conf
LoadModule suphp_module modules/mod_suphp.so suPHP_Engine on suPHP_ConfigPath /etc
3. Verificar configuração do ficheiro /etc/suphp.conf
umask=0022 x-httpd-php=php:/usr/bin/php-cgi
4. dar permissões 777 para /var/lib/php/session
Nota: Pode ser necessário limpar esta directoria pois alguns utilizadores podem ter alguma sessão activa e uma vez que o PHP em execução como utilizador e não como apache, este não poderá actualizar o ficheiro de sessão.
5. Activar o suPHP para um determinado domínio
<Directory /var/www/vhosts/<site>/httpdocs> Acivação do suphp php_admin_flag engine off suPHP_Engine on AddHandler x-httpd-php .php suPHP_UserGroup <siteadmin> psacln suPHP_AddHandler x-httpd-php </Directory>
Nota: Gosto de ter um ficheiro de configuração por domínio, numa pasta separada. Basta adicionar no httpd.conf
Include /etc/httpd/<pasta separada>/*.conf
6. Finalmente, reiniciar o Apache
service httpd restart
APM
Deixe um comentário
Tem de iniciar a sessão para publicar um comentário.