Local. htaccess estranhamente permitido executar o PHP no modo CGI / FastCGI no Apache em ambiente de hospedagem compartilhada

1

Estou usando um serviço de hospedagem compartilhada. Correndo phpinfo, eu posso ver a API do servidor mostra CGI / FastCGI em vez de Apache 2 Handler.

Neste artigo: link

Ele diz 'Se o seu servidor está configurado para rodar o PHP como um módulo do Apache, então você terá a opção de usar o php.ini ou os arquivos .htaccess do Apache, no entanto, se o seu servidor executar o PHP no modo CGI, só tem a opção de usar arquivos php.ini localmente para alterar as configurações, já que o Apache não está mais no controle completo do PHP. '

Eu acho realmente estranho que as regras de reescrita no .htaccess que eu criei funcionem perfeitamente enquanto ele está rodando no modo CGI. Por que isso está acontecendo?

    
por bobo 08.02.2010 / 01:14

1 resposta

1

O problema não é que as regras de reescrita do Apache no arquivo .htaccess não funcionem quando o PHP é executado como um módulo CGI vs. Apache. É só você não pode usar o arquivo .htacess para definir valores PHP quando ele é executado como um CGI. Em vez disso, você precisa ter um arquivo php.ini separado que tenha suas configurações alteradas nele. Dentro da minha própria conta de hospedagem compartilhada, que executa o PHP como um CGI, faço uso do FastCGI e tenho o seguinte no meu arquivo .htaccess :

<IfModule !mod_php.so>
    AddHandler myphp-script .php
    Action myphp-script /cgi-bin/myphp.fcgi
</IfModule>

Em seguida, no diretório /cgi-bin/ das minhas contas, coloquei o script myphp.fcgi com chmod 755 contendo:

#!/bin/sh

# This ensures PHP doesn't try to run it's own
# process manager.  
export PHP_FCGI_CHILDREN=0

# Execute PHP with my php.ini config file
exec /path/to/system/cgi-bin/php -c ~/myconf/php.ini

Ainda tenho uma seção <IfModule mod_rewrite.c> no meu arquivo .htaccess para lidar com a reconfiguração de alguns caminhos antigos do URI para a nova estrutura do URI para manter links antigos armazenados em cache nos mecanismos de pesquisa.

    
por 08.02.2010 / 01:54