.php ver variáveis de ambiente do Apache, arquivos .html não

2

Considere este ambiente:

$ cat .htaccess
AddType application/x-httpd-php .php .html
SetEnv Foo Bar

$ cat test.php
<?php
echo "Hello: ";
echo $_SERVER['Foo'];
echo $_ENV['Foo'];
echo getenv('Foo');
?>

$ cat test.html
<?php
echo "Hello: ";
echo $_SERVER['Foo'];
echo $_ENV['Foo'];
echo getenv('Foo');
?>

Esta é a saída de test.php :

Hello BarBarBar

Esta é a saída de test.html :

Hello 

Por que isso pode ser? Como posso consertar isso?

Aqui está o phpinfo.php : link

Aqui está o phpinfo.html : link

Se alguém souber onde posso hospedar uma página da Web real em vez de apenas o HTML para um, informe-me e moverei o conteúdo para lá. Obrigado.

    
por dotancohen 07.08.2012 / 23:27

1 resposta

1

a diferença é visível no bloco:

Environment 

lá na versão html todas as variáveis são definidas na forma global antiga:

$HTTP_HOST, $HTTP_USER_AGENT, etc.

e no novo formato também:

$_SERVER["HTTP_HOST"], $_SERVER["HTTP_USER_AGENT"], ...

na versão php eles são definidos apenas no novo formulário. parece que a versão html usa outro php.ini.

também vejo a variável

$_SERVER["ORIG_SCRIPT_FILENAME"]    ="/var/www/cgi-bin/cgi_wrapper/cgi_wrapper"

talvez o arquivo html seja analisado com o

/etc/php5/cli/php.ini
    
por 17.09.2012 / 04:23