Como posso usar SetEnv com mod_fcgid para passar opções específicas de virtualhost para meu aplicativo PHP? (apache2)

1

Estou com algum problema para descobrir como devo lidar com algo sob o FastCGI que funcionou muito bem com o mod_php. Antes eu estava usando SetEnv para passar opções da minha diretiva VirtualHost para o meu aplicativo PHP. Por exemplo:

SetEnv MYAPP_LOGGING_ROOT "/usr/local/myapp/logs"

Consegui acessar esse valor de $_SERVER['MYAPP_LOGGING_ROOT'] e foi uma maneira bastante conveniente de gerenciar isso. No entanto, esse valor não está sendo passado para meu aplicativo PHP em um ambiente FastCGI.

Eu tentei o seguinte, mas ele não parece estar passando para o meu aplicativo PHP:

FcgidInitialEnv MYAPP_LOGGING_ROOT "/usr/local/myapp/logs"

Estou sentindo falta de algo simples ou preciso fazer algo mais complexo?

    
por Beau Simensen 01.03.2011 / 08:54

1 resposta

2

SetEnv funciona com o mod-fcgid. Minha configuração:

    <Directory /var/www/>
            Options Indexes FollowSymLinks MultiViews
            AllowOverride None
            Order allow,deny
            allow from all
            FCGIWrapper /usr/lib/cgi-bin/php5
            AddHandler fcgid-script .php
            Options ExecCGI Indexes
            SetEnv MYAPP_LOGGING_ROOT "/usr/local/myapp/logs"
    </Directory>

foo.php:

<?php
    var_dump($_SERVER["MYAPP_LOGGING_ROOT"]);
?>

Teste:

curl localhost/foo.php 
string(21) "/usr/local/myapp/logs"
    
por 01.03.2011 / 09:20