Como ativar o register_globals

Este parâmetro não é aconselhável ser utilizado, pois sendo utilizado com outros parâmetros, e acompanhado de um código mal escrito, pode abrir brechas graves de segurança em seu site! À partir do PHP 4.2.x este parâmetro vem desligado por padrão, e na versão 6 do PHP os desenvolvedores foram mais radicais: removeram o parâmetro por completo!

Como segurança é um quesito que o programador iniciante não se preocupa, erros graves podem ser cometidos. Erros de lógica devido a sobreposição de variáveis, vulnerabilidades no módulo administrativo do sistema, exposição do banco de dados permitindo ataques de SQL Injection, etc, são apenas alguns problemas que podemos citar. Devido a esses possíveis problemas, não escreva seus programas usando register_globals = On.

Infelizmente, muitos scripts hoje precisam deste parâmetro ligado. Abaixo estamos listando algumas maneiras de ativá-lo em sua conta de hospedagem. Faça por sua conta e risco, estamos alertando você sobre o perigo!

Ativar via htaccess

Abra o arquivo .htacess na raiz da sua pasta public_html ou crie este arquivo caso não exista. Insira o seguinte código:

# Override PHP settings. The first IfModule is
# for Apache 1.3, the second for Apache 2.
<IfModule mod_php4.c>
php_value register_globals 1
</IfModule>
<IfModule sapi_apache2.c>
php_value register_globals 1
</IfModule>

Salve o arquivo e teste. Deverá funcionar. Caso não funcione, como é o caso de servidores com o suPHP ativado, vamos a próxima alternativa…

Ativar Via php.ini

Crie um arquivo php.ini na pasta onde seja exigido que o register_globals esteja ligado. Você deverá adicionar este arquivo em todas as pastas onde estejam arquivos PHP que precisem deste parâmetro ativado. O arquivo php.ini deve conter o seguinte código:

register_globals = On

Salve o arquivo e envie-o para todas as pastas necessárias.

_