Custom PHP Configuration Posted by on 27 June 2014 07:51 AM
|
|
Custom PHP configuration is useful when you want to limit the system resource consumption by PHP scripts or meet the requirements of a certain web application. When you set a parameter to the default value or do not specify the value, PHP will use the parameter value set in the server-wide PHP configuration. If you'd like to check the list of most commonly used PHP directives, you can find that under "Famous PHP directives" section given below. Note: If custom values are exceeding maximum limit set on server wide PHP configuration then it won't work. If you face any similar issues, feel free to reach out and we'll be glad to explain this to you in detail. If you’re using Linux Hosting (cPanel) and like to Edit the PHP directives, here's what you need to do: While we do not have any option in cPanel to edit the PHP settings directly, we can use cPanel >> PHP Configuration option to view the server-wide settings. As an alternate solution, we can use the php.ini file to customize the PHP settings on a domain. If you don’t find the php.ini file, you can create one. It’s easy. Here’s how you do it:
And its done!
How can I test the PHP configuration? You can use the phpinfo() function to check PHP settings of your domain name hosted on any servers 1. Create a file say info.php and add below line in it. ---- <?php phpinfo(); ?> ---- 2. Access http://domain.tld/info.php in browser to check current PHP settings of domain.tld (This might take few minutes to reflect recent changes). Here are a list of few famous PHP directives Note: Below examples are representations of PHP directives and do not display the actual value set on our servers memory_limit This sets the maximum amount of memory in bytes that a script is allowed to allocate. This helps prevent poorly written scripts for eating up all available memory on a server. Example: memory_limit = 128M
max_execution_time The maximum time in seconds a script is allowed to run before it is terminated. This helps prevent poorly written scripts from tying up the server. Example: max_execution_time = 20
max_input_time The maximum time in seconds a script is allowed to parse input data Example: max_input_time = 30
upload_max_filesize Limits maximum size of an uploaded file. Example: upload_max_filesize = 16M
post_max_size Sets max size of post data allowed. This setting also affects file upload. To upload large files, this value must be larger than upload_max_filesize. If memory limit is enabled, memory_limit also affects file uploading. In general, memory_limit should be larger than post_max_size. Example: post_max_size = 16M The temporary directory used for storing files when doing file upload. Must be writable by whatever user PHP is running as. Example: upload_tmp_dir = /dir/your_tmp_dir
session.save_path The directory where PHP writes session data (files). For example: /dir/tmp Example: session.save_path = /dir/tmp
safe_mode This feature has been DEPRECATED as of PHP 5.3.0 and REMOVED as of PHP 5.4.0. The PHP safe mode is an attempt to solve the shared-server security problem. This mode puts a number of restrictions on scripts (say, access to file system) mainly for security reasons. Enabling safe_mode is not needed if other reasonable security precautions are followed. It may make sense in some situations, but there is almost always a better way. Most of the CMS installation scripts will love to have safe_mode disabled (like Joomla). This is because safe_mode, by design, turns off the PHP functions that enable easy uploading via a Web browser. If you do use safe_mode, and need to perform installs via the Web browser, temporarily turn safe_mode OFF, and turn it back ON when finished. Example: safe_mode = On/Off
register_globals This feature has been DEPRECATED as of PHP 5.3.0 and REMOVED as of PHP 5.4.0. Tells whether to register the contents of the EGPCS (Environment, GET, POST, Cookie, Server) variables as global variables. When on, register_globals will inject scripts with all sorts of variables, like request variables from HTML forms. This option is a great security risk, thus do not turn it on without necessity. Example: register_globals = On/Off
open_basedir Limits the files that can be opened by PHP to the specified directory-tree. If the file is outside the specified directories, PHP scripts will refuse fopen() or gzopen() to open those files. To separate directories, use a colon (:) on Linux and a semicolon (;) on Windows. For example, on Linux: /dir/upload:/usr/tmp. Example: open_basedir = /dir/sub_dir
Magic Quotes This has been DEPRECATED as of PHP 5.3.0 and REMOVED as of PHP 5.4.0. This is used to prevent SQL Injection and it's helps in writing better (more secure) code. Example: magic_quotes_gpc = On/Off
error_reporting Defines the level of error reporting like ~E_ALL, E_ALL and ~E_NOTICE,E_ALL ('~' is used to ignore). E_ALL : All errors and warnings, as supported E_NOTICE : Run-time notices. Indicate that the script encountered something that could indicate an error, but could also happen in the normal course of running a script. Example: error_reporting = E_ALL & ~E_NOTICE
display_errors Determines whether errors should be printed to the screen as part of the output or if they should not be shown to a user. Example: display_errors = On/Off
log_errors Tells whether to log errors. By default, errors are logged in the server's error log. Use the error_log directive to specify the path to your own log file. Example: log_errors = On/Off
Additional links for reference: http://www.php.net/manual/en/ini.core.php | |
|