Não sei por que, mas quando tento iniciar o serviço httpd, ele não inicia.
Configuração do servidor:
OS: CentOS 5.10
PHP: 5.5.7
Apache: 2.2.3
Veja como descobri o que estava acontecendo:
$ sudo service httpd start
Starting httpd: [ OK ]
$ sudo service httpd status
httpd dead but subsys locked
Então removi o arquivo subsys do httpd e tentei novamente, mas falhou novamente.
Meu processo para adicionar fcgid foi o seguinte:
Eu construí o mod_fcgid a partir do código-fonte, coloquei-o no diretório /etc/httpd/modules.
Anexei
LoadModule fcgid_module modules/mod_fcgid.so
à lista de módulosComentei
LoadModule cgi_module modules/mod_cgi.so
porque não vou precisar.Criei um script wrapper para php e coloquei-o em /var/www/cgi-bin:
Criei um manipulador para PHP que aponta para o wrapper.
Então tento iniciar o serviço httpd
A seguir está o erro que recebo em /var/log/httpd/error_log:
[Mon Dec 16 12:18:26 2013] [notice] SELinux policy enabled; httpd running as context user_u:system_r:httpd_t:s0
[Mon Dec 16 12:18:26 2013] [notice] suEXEC mechanism enabled (wrapper: /usr/sbin/suexec)
[Mon Dec 16 12:18:26 2013] [notice] SSL FIPS mode disabled
[Mon Dec 16 12:18:26 2013] [notice] Digest: generating secret for digest authentication ...
[Mon Dec 16 12:18:26 2013] [notice] Digest: done
[Mon Dec 16 12:18:26 2013] [emerg] (17)File exists: mod_fcgid: Can't create shared memory for size 1200712 bytes
Vejo que diz "Arquivo sai", mas procurei em todos os lugares por arquivos extras com "fcgi" no nome e não consigo encontrar nada.
Não tenho certeza se isso é um problema de permissão ou algo com o SELinux, talvez - ou talvez com o suEXEC?
Agradeceria qualquer orientação, pois nem sei por onde começar a pesquisar.
Tentei novamente e o erro foi um pouco diferente desta vez:
[Mon Dec 16 12:50:23 2013] [emerg] (13)Permission denied: mod_fcgid: Can't create shared memory for size 1200712 bytes
Não tenho certeza de qual pasta ou arquivo preciso alterar a propriedade.
Eu configurei o SELinux para permissive
e ele permitiu que o processo iniciasse sem problemas - mas não quero deixar o SELinux como tal. Farei outra pergunta sobre como permitir que Apache, fcgid e PHP trabalhem juntos no SELinux.
Responder1
apenas para testar SELinux
parte, tente desativá-lo e veja se essa é a causa do seu problema:
[alexus@XXXXXXXXXX ~]$ getenforce
Enforcing
[alexus@XXXXXXXXXX ~]$ sudo setenforce 0
[alexus@XXXXXXXXXX ~]$ getenforce
Permissive
[alexus@XXXXXXXXXX ~]$
Além disso, você está executando isso como chroot por acaso? Eu tive um problema semelhante na época do FreeBSD, mas isso estava relacionado ao jail/chroot.