Knowledge Base

How to set the PHP register_globals directive in an .htaccess file

This article describes how to enable and disable the register_globals directive in an .htaccess file.

The information in this article only applies to certain types of hosting accounts. To determine whether or not the information below applies to your account, please see this article.

This article assumes that you have already set up a custom .htaccess file. If you have not already set up a custom .htaccess file, please read this article first.

This article only applies to PHP 5.3 and earlier versions. The register_globals directive was removed in PHP 5.4.

Using the register_globals directive

The register_globals directive is disabled by default. You should be aware of the security implications of enabling the register_globals directive. For more information, please visit http://php.net/manual/en/security.globals.php.

When the register_globals feature is enabled, PHP automatically creates variables corresponding to HTML form parameters and cookie data.

To enable or disable the register_globals feature, follow these steps:

  1. Log in to your account using SSH.
  2. Use a text editor to modify the .htaccess file as follows:
    • To enable the register_globals feature, add the following line:
      php_flag register_globals On
    • To disable the register_globals feature, add the following line:

      php_flag register_globals Off
  3. Save the changes to the .htaccess file and exit the text editor.
  4. To verify that the new setting is active, create a PHP test file that contains the following code in the same directory where the .htaccess file is located:
    <?php phpinfo(); ?>
  5. Load the test file in your web browser, and then search for the name of the directive. The Local Value column should display the new setting that you specified in the .htaccess file.

More Information