Appendix B. Configuring PHP

The PHP engine features a large number of configuration directives that can be tweaked to alter how the engine behaves. Most directives can be set using any of the following methods:

  • By setting the directive in the PHP configuration file php.ini: This file is read by the PHP engine when it starts. All directives can be set this way. Usually you need root (administrator) access to edit this file.

  • By editing an Apache .htaccess file: If you're running your PHP engine as an Apache module, you can create an .htaccess file in the document root of your Web site and place directives in there. (You can also place the .htaccess file in a subfolder if you only want the settings to apply to files and folders in that subfolder.) Use the php_value Apache directive to set PHP directives that have non-Boolean values, and the php_flag Apache directive to set directives that have Boolean values. For example:

    php_value upload_max_filesize 8M
    php_flag  display_errors      Off
  • By setting an Apache directive in an httpd.conf Apache configuration file: This takes much the same format as an .htaccess file, with two additional directives allowed: php_admin_value and php_admin_flag. These are used for setting PHP directives that can only be set in php.ini or httpd.conf files (such as extension_dir or file_uploads).

    For more on setting directives within Apache httpd.conf and .htaccess files, see

  • By editing a .user.ini file: Like .htaccess, this works ...

Get Beginning PHP 5.3 now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.