Home >Backend Development >PHP Tutorial >PHP ini file Chinese translation
Syntax
The syntax of this file is very simple. Whitespace characters and lines starting with semicolons are simply ignored.
Chapter titles (eg: [php]) are also simply ignored, even though they may have some meaning in the future.
The format of the setting command is as follows:
directive = value
The command name (directive) is case-sensitive! So "foo=bar" is different from "FOO=bar".
Value (value) can be:
1. A string delimited by quotation marks (such as: "foo")
2. A number (integer or floating point number, such as: 0, 1, 34, -1, 33.55 )
3. A PHP constant (such as: E_ALL, M_PI)
4. An INI constant (On, Off, none)
5. An expression (such as: E_ALL & ~E_NOTICE)
INI The expressions in the file only use: bitwise operators, logical NOT, parentheses:
| bitwise OR
& bitwise AND
~ bitwise NOT
! The logical NOT
Boolean flag is turned on with On. Use Off to indicate shutdown.
An empty string can be represented by not writing anything after the equal sign, or using the none keyword:
foo = ; ; Set foo to an empty string
foo = none ; Set foo to Empty string
foo = "none" ; Set foo to the string 'none'
If you use constants in dynamic extensions (PHP extensions or Zend extensions) in the directive value,
Then you can only use these constants after loading these dynamically expanded command lines.
httpd.conf
; You can also override the value of php.ini in httpd.conf for more flexible configuration:
; php_value name value ; Set non-bool type command, set value to none to clear the previous settings
; php_flag name on|off; only used to set bool type commands
;
; PHP constants (such as E_ALL) can only be used in php.ini To use, the corresponding mask value must be used in httpd.conf.
; Directives with the "SYS" flag can only be used in the global configuration section of httpd.conf.
;[Updated on 2007-4-9, added more information about PHP6, and corrected and added some information according to PHP-5.2.2]
;========== ===================================
;;==========Configuration Detailed explanation of instructions============================
;================== ===========================
; The setting value of each command below is the same as the built-in default value of PHP-5.2.2 same.
; That is, if 'php.ini' does not exist, or you delete some lines, the default value will be the same.
;;;;;;;;;;;;;;;
;; Apache ;;
;;;;;;;;;;;;;; Only valid when using PHP as an Apache module.
child_terminate = Off
; Whether the PHP script is allowed to use the apache_child_terminate() function to terminate the child process after the request ends.
; This directive is only available when PHP is installed as a module of Apache1.3 on UNIX platforms. It does not exist in any other case.
engine = On
; Whether to enable the PHP parsing engine.
; Tip: You can turn on or off the PHP parsing engine based on the directory or virtual host in httpd.conf.
last_modified = Off
; Whether to place the last modified time of the PHP script in the Last-Modified response header.
xbithack = Off
; Whether to parse as a PHP executable bit group regardless of the end of the file.
;;;;;;;;;;;;;;;;
;; PHP Core;;
;;;;;;;;;;;;;;; [PHP-Core-DateTime]
; The first four configuration options are currently only used for date_sunrise() and date_sunset() functions.
date.default_latitude = 31.7667
; Default latitude
date.default_longitude = 35.2333
; Default longitude
date.sunrise_zenith = 90. 583333
; Default sunrise zenith
date .sunset_zenith = 90.583333
; Default sunset zenith
date.timezone =
; The default time zone used for all date and time functions when the TZ environment variable is not set.
; Mainland China should use "PRC"
; The priority order of application time zones is:
; 1. The time zone set with the date_default_timezone_set() function (if set)
; 2. TZ environment variable ( If not empty)
; 3. The value of the command (if set)
; 4. PHP guesses by itself (if supported by the operating system)
; 5. If none of the above is successful, use UTC
[PHP-Core-Assert]
assert.active = On
; Whether to enable assert() assertion evaluation
assert.bail = Off
; Whether to abort when a failed assertion occurs Execution of the script
assert.callback =
; The callback function executed when a failed assertion occurs
assert.quiet_eval = Off
; Whether to use quiet evaluation (no error message is displayed, equivalent to error_reporting=0 ).
; If off, the current error_reporting directive value is used when evaluating assertion expressions.
assert.warning = On
; Whether to issue a warning for each failed assertion
[PHP-Core-SafeMode]
; Safe mode was established to solve the security issues of shared servers.
; But trying to solve this problem at the PHP layer is structurally unreasonable,
; The correct approach should be to modify the web server layer and operating system layer.
; Therefore, the safe mode is abolished in PHP6 and security protection based on open_basedir is used.
; This part of the instructions has been completely deleted in PHP6.
safe_mode = Off
;SYS
; Whether to enable safe mode.
; When opened, PHP will check whether the owner of the current script is the same as the owner of the file being operated.
; If they are the same, the operation is allowed, if they are different, the operation is denied.
safe_mode_gid = Off
;SYS
; In safe mode, a UID comparison check is performed by default when accessing files.
; But in some cases strict UID checking is not suitable, and loose GID checking is enough.
; If you want to relax it to only do GID comparison, you can turn this parameter on.
safe_mode_allowed_env_vars = "PHP_"
;SYS
; A comma-separated list of prefixes for environment variables that users can only change in safe mode.
; Allowing users to set certain environment variables may lead to potential security vulnerabilities.
; Note: If this parameter value is empty, PHP will allow users to change any environment variables!
safe_mode_protected_env_vars = "LD_LIBRARY_PATH"
;SYS
; List of environment variables (comma separated) that users cannot change in safe mode.
; These variables are protected even when the safe_mode_allowed_env_vars directive is set to allowed.
safe_mode_exec_dir = "/usr/local/php/bin"
;SYS
; In safe mode, only executable programs in this directory are allowed to be executed by functions of the system program.
; These functions are: system, escapeshellarg, escapeshellcmd, exec, passthru,
; proc_close, proc_get_status, proc_nice, proc_open, proc_terminate, shell_exec
safe_mode_include_dir =
;SYS
; In safe mode, the UID/GID checking will be skipped when files in the group directory and its subdirectories are included.
; In other words, if the value here is empty, any files with inconsistent UID/GID will not be allowed to be included.
; The directory set here must already exist in the include_path directive or be included with a full path.
; Use colons (semicolons under Win) to separate multiple directories.
; The specified restriction is actually a prefix, not a directory name,
; that is, "/dir/incl" will allow access to "/dir/include" and "/dir/incls"
; if If you wish to restrict access to a specific directory, add a trailing slash.
[PHP-Core-Safe]
allow_url_fopen = On
;SYS
; Whether to allow opening remote files
allow_url_include = Off
;SY S
; Is include/ allowed? require remote files.
disable_classes =
;SYS
; This directive accepts a comma separated list of class names to disable specific classes.
disable_functi**** =
;SYS
; This directive accepts a comma separated list of function names to disable specific functions.
enable_dl = On
;SYS
; Whether to allow the use of the dl() function. The dl() function only works when PHP is installed as an apache module.
; Disabling the dl() function is mainly for security reasons, because it can bypass the restrictions of the open_basedir directive.
; The dl() function is always disabled in safe mode regardless of settings here.
; This directive has been deleted in PHP6, which is equivalent to setting it to Off.
expose_php = On
;SYS
; Whether to expose the fact that PHP is installed on the server (add its signature in the http header).
; It poses no direct security threat, but it lets the client know that PHP is installed on the server.
open_basedir =
;SYS
; Restricts all files (including the files themselves) that PHP is allowed to operate to this group of directory lists.
; When a script attempts to open a file outside the specified directory tree, it will be rejected.
; All symbolic links are resolved, so it is not possible to circumvent this restriction through symbolic links.
; The special value '.' specifies that the directory where the script is stored will be used as the base directory.
; But this is a bit dangerous because the script's working directory can be easily changed by chdir().
; For shared servers, it will be very useful to flexibly set this directive in httpd.conf.
; Use semicolons to separate directories on Windows and colons on UNIX systems.
; When used as an Apache module, the open_basedir path in the parent directory will be automatically inherited.
; The specified restriction is actually a prefix, not a directory name,
; In other words, "/dir/incl" will allow access to "/dir/include" and "/dir/incls",
; If you wish to restrict access to a specific directory, add a trailing slash.
; By default, all files are allowed to be opened.
sql.safe_mode = Off
;SYS
; Whether to use SQL safe mode.
; If on, database connection functions that specify default values will use these default values instead of supported parameters.
; For the connection function of each different database, please refer to the corresponding manual page for its default value.
[PHP-Core-Error]
error_reporting = E_ALL & ~E_NOTICE
; The error reporting level is the superposition of bit fields, it is recommended to use E_ALL | E_STRICT
; 1 E_ERROR Fatal runtime error
; 2 E_WARNING Runtime warning (non-fatal error)
; 4 E_PARSE Compile time parsing error
; 8 E_NOTICE Runtime reminder (often a bug, maybe intentional)
; 16 E_CORE_ERROR when PHP starts Fatal error during initialization
; 32 E_CORE_WARNING Warning during PHP initialization process (non-fatal error)
; 64 E_COMPILE_ERROR Fatal error during compilation
; 128 E_COMPILE_WARNING Warning during compilation (non-fatal error)
; 256 E_USER_ERROR User-defined fatal error
; 512 E_USER_WARNING User-defined warning (non-fatal error)
; 1024 E_USER_NOTICE User-defined reminder (often a bug, maybe intentional)
; 2048 E_STRICT Coding standardization warning (recommend how to modify for forward compatibility)
; 4096 E_RECOVERABLE_ERROR Near-fatal runtime error, if not caught, it is treated as E_ERROR
; 6143 E_ALL All errors except E_STRICT (PHP6 8191 , that is, including all)
track_errors = Off
; Whether to save the latest error or warning message in the variable $php_errormsg.
display_errors = On
; Whether to display error messages as part of the output.
; On the final published web site, it is strongly recommended that you turn off this feature and use error logging instead (see below).
; Turning this feature on in the final published web site may expose some security information,
; such as file paths, database plans or other information on your web service.
display_startup_errors = Off
; Whether to display PHP startup errors.
; Even if the display_errors directive is turned on, turning this parameter off will not display errors when PHP starts.
; It is recommended that you turn off this feature unless you must use it for debugging.
report_memleaks = On
; Whether to report memory leaks. This parameter only works in PHP compiled in debug mode,
; and must include E_WARNING in the error_reporting directive
report_zend_debug = On
; No documentation yet
html_errors = On
; Whether Use HTML markup in error messages.
; NOTE: Do not use this feature on published sites!
docref_root = ;"http://localhost/phpmanual/"
docref_ext = ;".html"
; If the html_errors command is turned on, PHP will display a hyperlink on the error message,
; directly Link to a page describing the error or the function that caused the error.
; You can download the php manual from http://www.php.net/docs.php,
; and point the docref_root directive to the URL directory where your local manual is located.
; You must also set the docref_ext directive to specify the file extension (must contain '.').
; Note: Do not use this feature on published sites.
error_prepend_string = ;""
; String used for output before error message
error_append_string = ; ""
; String used for output after error message
xmlrpc_errors = Off
;SYS
xmlrpc_error_number = 0
; No documentation yet
[PHP-Core-Logging]
define_syslog_variables = Off
; Whether to define various system log variables, such as :$LOG_PID, $LOG_CRON and so on.
; Good idea to turn it off to be more efficient.
; You can call the define_syslog_variables() function to define these variables at runtime.
error_log =
; Which file to record the error log to. The file must be writable by the web server user.
; syslog means logging to the system log (event log under NT, syslog(3) under Unix)
; If no value is set here, the error will be logged to the error log of the web server.
log_errors = Off
; Whether to record errors in the log file and where to record them depends on the error_log command.
; It is strongly recommended that you use logging errors instead of direct output when you finally publish the web site,
; This will let you know what went wrong without exposing sensitive information.
log_errors_max_len = 1024
; Set the maximum length of the error source associated with the error message attached to the error log.
; The value set here is valid for displayed and logged errors as well as $php_errormsg.
; Set to 0 to allow unlimited length.
ignore_repeated_errors = Off
; Whether to ignore repeated error messages when recording error logs.
; Error messages must appear on the same line in the same file to be considered duplicates.
ignore_repeated_source = Off
; Whether to ignore repeated error sources when ignoring repeated error messages.
[PHP-Core-Mail]
; For the mail function to be available, PHP must have access to the sendmail program at compile time.
; If using other mail programs, such as qmail or postfix, make sure to use the corresponding sendmail wrapper.
; PHP will first search for sendmail in the system's PATH environment variable, and then search in the following order:
; /usr/bin:/usr/sbin:/usr/etc:/etc:/usr/ucblib:/usr /lib
; It is strongly recommended that sendmail can be found in PATH.
; Additionally, the user compiling PHP must have access to the sendmail program.
SMTP = "localhost"
; The host name or IP address of the SMTP server used to send emails in the mail() function. Only for win32.
smtp_port = 25
; The port number of the SMTP server. Only for win32.
sendmail_from =
; The email address in the "From:" header used when sending emails. Only for win32
; This option also sets the "Return-Path:" header.
sendmail_path = "-t -i"
;SYS
; Only for unix, it can also support parameters (the default is 'sendmail -t -i')
; The path of the sendmail program, usually "/usr/sbin/sendmail or /usr/lib/sendmail".
; The configure script will try to find the program and set it as the default, but if it fails, you can set it here.
; Systems that do not use sendmail should set this command as a sendmail alternative (if available).
; For example, Qmail users can usually set it to "/var/qmail/bin/sendmail" or "/var/qmail/bin/qmail-inject".
; qmail-inject handles mail correctly without any options.
mail.force_extra_parameters =
; Mandatory additional parameter values passed to the sendmail library as additional parameters.
; These parameters will always replace the 5th parameter of mail(), even in safe mode.
[PHP-Core-ResourceLimit]
default_socket_timeout = 60
; Default socket timeout (seconds)
max_execution_time = 30
; Maximum allowed execution time of each script (seconds), 0 means no limit.
; This parameter helps prevent inferior scripts from endlessly occupying server resources.
; This command only affects the running time of the script itself. Any other time spent outside the running of the script,
; such as the use of system()/sleep() functions, database queries, file uploads, etc., is not included. Inside.
; In safe mode, you cannot use ini_set() to change this setting at runtime.
memory_limit = 128M
; The maximum number of memory bytes that a script can apply for (K and M can be used as units).
; This helps prevent bad scripts from consuming all the memory on the server.
; To be able to use this directive, you must use the "--enable-memory-limit" configuration option when compiling.
; If you want to remove the memory limit, you must set it to -1 .
; After setting this directive, the memory_get_usage() function will become available.
max_input_time = -1
; The maximum allowed time (seconds) for each script to parse input data (POST, GET, upload).
; -1 means no limit.
max_input_nesting_level = 64
; The maximum nesting depth of input variables (no more explanation documents yet)
post_max_size = 8M
; The maximum byte length of POST data allowed. This setting also affects file uploads.
; If the POST data exceeds the limit, $_POST and $_FILES will be empty.
; To upload large files, this value must be greater than the value of the upload_max_filesize directive.
; If memory limit is enabled, then this value should be smaller than the value of the memory_limit directive.
realpath_cache_size = 16K
;SYS
; Specifies the realpath (normalized absolute path name) buffer size used by PHP.
; This value should be increased to improve performance on systems where PHP opens a large number of files.
realpath_cache_ttl = 120
;SYS
; The validity period (seconds) of the information in the realpath buffer.
; For systems where files rarely change, this value can be increased to improve performance.
[PHP-Core-FileUpLoad]
file_uploads = On
;SYS
; Whether to allow HTTP file uploads.
; See upload_max_filesize, upload_tmp_dir, post_max_size instructions
upload_max_filesize = 2M
; The maximum size of files allowed to be uploaded.
upload_tmp_dir =
;SYS
; The temporary directory where files are stored when uploading files (must be a directory writable by the PHP process user).
; If not specified, PHP uses the system default temporary directory.
[PHP-Core-MagicQuotes]
; PHP6 has deleted the following instructions, which is equivalent to all Off
magic_quotes_gpc = On
; Whether to use automatic string escaping for input GET/POST/Cookie data ( ' " NULL ).
; The settings here will automatically affect the value of the $_GEST $_POST $_COOKIE array.
; If this command is turned on at the same time as the magic_quotes_sybase command, only the single quote (') will be escaped as ( ''),
; and other special characters will not be escaped, i.e. ( " NULL ) will remain intact! !
; It is recommended to turn off this feature and use a custom filter function.
magic_quotes_runtime = Off
; Whether to use automatic string escaping ( ' " NULL ) for data generated from external resources at runtime.
; If this command is turned on, most functions will use automatic string escaping ( ' " NULL ) for data generated from external resources (database, database, etc.) Text files, etc.) will be escaped.
; For example: data obtained by SQL query, data obtained by exec() function, etc.
; If this command is opened at the same time as the magic_quotes_sybase command, only Escape the single quote (') to (''),
; other special characters will not be escaped, that is, ( " NULL ) will remain intact! !
; It is recommended to turn off this feature and use a custom filter function depending on the situation.
magic_quotes_sybase = Off
; Whether to use automatic string escaping in the form of Sybase (indicated by '')
[PHP-Core-HighLight]
highlight.bg = "# FFFFFF"
highlight.comment = "#FF8000"
highlight.default = "#0000BB"
highlight.html = "#000000"
highlight.keyword = "#007700"
highlight.string = "# DD0000"
; The color of syntax highlighting mode (usually used to display .phps files).
; As long as it is accepted by , it will work fine.
[PHP-Core-Langue]
short_open_tag = On
; Whether to allow the use of " ?>" short tag. Otherwise the "" long identifier must be used.
; Please do not use short tags unless your php program is only running in a controlled environment and for your own use only.
; If you want to use PHP with XML, you can choose to turn off this option to embed "" directly,
; Otherwise you must use PHP to output: echo '
; This directive will also affect the abbreviation " =", which is equivalent to " echo". To use it, the short tag must also be turned on. =",它和" echo"等价,要使用它也必须打开短标记。
asp_tags = Off
; Whether to allow the ASP style tag "", this will also affect the abbreviation "
; This directive will be deleted in PHP6
arg_separator.output = "&"
; The separator used to separate parameters in the URL generated by PHP.
; You can also use "&" or "," etc.
arg_separator.input = "&"
; A list of separators used by PHP when parsing variables in URLs.
; Each character in the string will be treated as a delimiter.
; You can also use ",&" and so on.
allow_call_time_pass_reference = On
; Whether to force parameters to be passed by reference when calling functions (you will receive a warning every time you use this feature).
; PHP opposes this approach and has deleted this directive (equivalent to setting it to Off) in PHP6 because it affects the cleanliness of the code.
; It is encouraged to explicitly specify in the function declaration which parameters are passed by reference.
; We encourage you to turn this option off to ensure that your scripts will still work properly in future versions of the language.
auto_globals_jit = On
; Whether to create it only when the $_SERVER and $_ENV variables are used (instead of automatically creating it when the script is started).
; If these two arrays are not used in the script, turning on this directive will improve performance.
; For this directive to take effect, the register_globals and register_long_arrays directives must be turned off.
auto_prepend_file =
auto_append_file =
; Specifies the file name to be automatically parsed before/after the main file. Leave empty to disable the feature.
; The file is included as if the include() function was called, so the value of the include_path directive is used.
; NOTE: If the script is terminated via exit(), the automatic suffix will not occur.
variables_order = "EGPCS"
; PHP registers the order of Environment, GET, POST, Cookie, Server variables.
; Represented by E, G, P, C, S respectively, registered from left to right, the new value overwrites the old value.
; For example, setting it to "GP" will cause the POST variable to overwrite the GET variable of the same name,
; and completely ignore the Environment, Cookie, Server variables.
; It is recommended to use "GPC" or "GPCS" and use the getenv() function to access environment variables.
register_globals = Off
; Whether to register E, G, P, C, S variables as global variables.
; Turning this directive on may cause serious security issues unless your scripts are checked very carefully.
; It is recommended to use predefined super global variables: $_ENV, $_GET, $_POST, $_COOKIE, $_SERVER
; This directive is affected by the variables_order directive.
; This directive has been removed in PHP6.
register_argc_argv = On
; Whether to declare $argv and $argc global variables (including information using the GET method).
; It is recommended not to use these two variables and turn off this instruction to improve performance.
register_long_arrays = On
; Whether to enable old-style long arrays (HTTP_*_VARS).
; Encourage the use of short-form predefined superglobal arrays and turn this feature off for better performance.
; This directive has been removed in PHP6.
always_populate_raw_post_data = Off
; Whether to always generate $HTTP_RAW_POST_DATA variable (raw POST data).
; Otherwise, this variable is only generated when data of an unrecognized MIME type is encountered.
; However, a better way to access the raw POST data is php://input .
; $HTTP_RAW_POST_DATA is not available for form data with enctype="multipart/form-data".
unserialize_callback_func =
; If the deserialization processor needs to instantiate an undefined class,
; The callback function specified here will be called by unserialize() with the name of the undefined class as a parameter,
; To avoid getting incomplete "__PHP_Incomplete_Class" objects.
; If no function is specified here, or the specified function does not contain (or implement) the undefined class, a warning message will be displayed.
; So only set this directive if you really need to implement such a callback function.
; To disable this feature, just leave it blank.
y2k_compliance = On
; Whether to force Y2K compliance to turn on (may cause problems in non-Y2K compliant browsers).
zend.ze1_compatibility_mode = Off
; Whether to use the mode compatible with Zend Engine I (PHP 4.x). This directive will be deleted in PHP6 (equivalent to Off).
; This will affect object copying, construction (objects without attributes will produce FALSE or 0), and comparison.
; In compatibility mode, objects will be passed by value instead of the default pass by reference.
precision = 14
; The number of significant digits displayed in floating point data.
serialize_precision = 100
; The precision (significant digits) when serializing and storing floating-point and double-precision data.
; The default value ensures that floating point data is decoded by the deserializer without losing data.
[PHP-Core-OutputControl]
; The output control function is useful, especially when sending HTTP headers after the information has been output.
; The output control function will not act on the HTTP headers sent by functions such as header() or setcookie(),
; but will only affect the information output by the echo() function and the information embedded between the PHP code.
implicit_flush = Off
; Whether to require the PHP output layer to automatically refresh data after each output block.
; This is equivalent to automatically calling the flush() function after each print(), echo(), and HTML block.
; Turning this option on has a serious impact on the performance of program execution and is usually only recommended for debugging.
; In the execution mode of CLI SAPI, this command is On by default.
output_buffering = 0
; Output buffer size (bytes). The recommended value is 4096~8192.
; Output buffering allows you to send HTTP headers (including cookies) even after outputting the body content.
; The price is that the output layer slows down a little.
; Setting up output buffering can reduce writing and sometimes sending network packets.
; The actual benefit of this parameter depends greatly on what web server you are using and what kind of script.
output_handler =
; Redirects the output of all scripts to an output handler function.
; For example, when redirecting to the mb_output_handler() function, the character encoding will be transparently converted to the specified encoding.
; Once you specify an output handler here, output buffering will be automatically turned on (output_buffering=4096).
; Note 0: Only PHP built-in functions can be used here, custom functions should be specified using ob_start() in the script.
; Note 1: Portable scripts must not rely on this directive, but should use the ob_start() function to explicitly specify the output processing function.
; Using this command may cause errors in scripts you are not familiar with.
; Note 2: You cannot use the two output processing functions "mb_output_handler" and "ob_iconv_handler" at the same time.
; You cannot use the "ob_gzhandler" output processing function and the zlib.output_compression directive at the same time.
; Note 3: If you use the zlib.output_handler directive to enable zlib output compression, this directive must be empty. The "root directory" of PHP. Only valid when non-empty.
; If safe_mode=On, all files outside this directory will be rejected.
; If PHP is compiled without specifying FORCE_REDIRECT and is run as CGI on a non-IIS server,
; this directive must be set (see the Security section in the manual).
; The alternative is to use the cgi.force_redirect directive.
include_path = ".:/path/to/php/pear"
; Specify a set of directories for the require(), include(), and fopen_with_path() functions to find files.
; The format is similar to the system's PATH environment variable (separated by colons under UNIX and semicolons under Windows):
; UNIX: "/path1:/path2"
; Windows: "path1;path2"
; Use '.' in the include path to allow relative paths, which represent the current directory.
user_dir =
;SYS
; tells PHP which directory to look for when opening the script using /~username. It is only valid when it is not empty.
; That is, use the basic directory name of PHP files under the user directory, for example: "public_html"
extension_dir = "/path/to/php"
;SYS
; to store extension libraries (modules) directory, which is the directory used by PHP to find dynamic extension modules.
; The default under Windows is "C:/php5"
[PHP-Core-HTTP]
default_mimetype = "text/html"
default_charset = ;"gb2312"
; PHP default The "Content-Type: text/html" HTTP header will be automatically output.
; If the default_charset directive is set to "gb2312",
; then "Content-Type: text/html; charset=gb2312" will be automatically output.
; PHP6 opposes the use of the default_charset directive and recommends the use of the unicode.output_encoding directive.
[PHP-Core-Unicode]
; PHP6 provides comprehensive Unicode support based on the ICU (International Components for Unicode) library.
; You need to use --with-icu-dir=
; Except for detect_unicode, all others are new instructions in PHP6.
;
; Information on PHP6 is currently lacking, so the content in this section may be incomplete or even incorrect.
detect_unicode = On
; Indicates whether the Zend engine detects whether a script contains multi-byte characters by checking the script's BOM (Byte Order Mark).
; It is recommended to close. PHP6 has canceled this directive and replaced its function with the unicode.script_encoding directive.
unicode.semantics = Off
; Whether to enable Unicode support.
; If this directive is turned on, PHP will become a complete Unicode environment, such as:
; All strings and variables accepted from HTTP will become Unicode, and all PHP identifiers can also use Unicode characters.
; Moreover, PHP will use Unicode strings internally and be responsible for automatic conversion of peripheral non-Unicode characters,
; For example: HTTP input and output, streams, file system operations, etc., even php.ini itself will be in accordance with UTF -8 encoding to parse.
; After enabling this command, you must explicitly specify the binary string. PHP will not make any assumptions about the contents of binary strings,
; therefore your program must ensure that it can handle binary strings appropriately.
; If you turn this directive off, PHP will behave exactly as it did before:
; Strings will not become Unicode, file and binary strings will be backwards compatible, and php.ini will follow "as- is" style analysis.
; Regardless of whether this directive is turned on or not, all functions and operators transparently support Unicode strings.
unicode.fallback_encoding = UTF-8
; Sets the default value for all other unicode.*_encoding directives.
; That is to say, if a unicode.*_encoding directive is not explicitly set, the value set here will be used.
unicode.runtime_encoding =
; The runtime encoding specifies the encoding used when converting binary strings internally within the PHP engine.
; The settings here have no effect on I/O related operations (such as writing to standard output/reading the file system/decoding HTTP input variables).
; PHP also allows you to convert strings explicitly:
; (binary)$str -- to a binary string
; (unicode)$str -- to a Unicode string
; (string )$str -- Convert to Unicode string if unicode.semantics is On, otherwise convert to binary string
; For example, if the value of this directive is iso-8859-1 and $uni is a Unicode string, then
; $str = (binary)$uni
; will wait for a binary string encoded using iso-8859-1.
; PHP will implicitly convert the relevant strings to Unicode before operations such as connection, comparison, and parameter passing, and then perform operations.
; For example, when connecting a binary string with Unicode,
; PHP will use the settings here to convert the binary string into a Unicode string before performing the operation.
unicode.output_encoding =
; The encoding used by PHP to output non-binary strings.
; Automatically convert output content such as 'print' and 'echo' to the encoding set here (binary strings are not converted).
; When writing data to an external resource such as a file,
; you must rely on the stream encoding feature or manually encode the data using Unicode extended functions.
; The use of the previous default_charset directive is deprecated in PHP6, and this directive is recommended.
; The previous default_charset directive only specified the character set in the Content-Type header and did not perform any conversion on the actual output.
; In PHP6, the default_charset directive is only effective when unicode.semantics is off.
; After setting this directive, the value of this directive will be filled in the 'charset' part of the Content-Type output header,
; regardless of how the default_charset directive is set.
unicode.http_input_encoding =
; The encoding of the content of variables (such as $_GET and _$POST) obtained through HTTP.
; This feature was still under development until April 2007....
unicode.filesystem_encoding =
; The encoding of the directory name and file name of the file system.
; File system related functions (such as opendir()) will use this encoding to accept and return file names and directory names.
; The setting here must be exactly the same as the encoding actually used by the file system.
unicode.script_encoding =
; The default encoding of the PHP script itself.
; You can use any encoding supported by ICU to write PHP scripts.
; If you want to set the encoding for a separate script file, you can use
;
; at the beginning of the script to specify it. Note: It must start with the first line and should not contain any characters (including spaces).
; This method can only affect the script in which it is located, and will not affect any other included scripts.
unicode.stream_encoding = UTF-8
unicode.from_error_mode = 2
unicode.from_error_subst_char = 3f
; No documentation yet
[PHP-Core-Misc]
auto_detect_line_endings = Off
; Whether to let PHP automatically detect end-of-line characters (EOL).
; If your script must process Macintosh files,
; Or if you are running on a Macintosh and also need to process unix or win32 files,
; Turning this command on will allow PHP to automatically detect EOL so that fgets() and The file() function works fine.
; But it will also cause incompatible behavior for people who use the carriage return (CR) as the project separator under Unix systems.
; Additionally, there is a small performance penalty when detecting EOL habits on the first row.
browscap = ;"c:/windows/system32/inetsrv/browscap.ini"
;SYS
; Only PWS and IIS require this setting
; You can download it from http://www.garykeith.com /browsers/downloads.asp
; Get a browsercap.ini file.
ignore_user_abort = Off
; Whether to insist on completing the entire request even after the user aborts the request.
; You should consider turning it on when performing a long request,
; because long requests may cause the user to terminate midway or the browser to time out.
user_agent = ;" PHP"
; Define "User-Agent" string
;url_rewriter.tags = "a=href,area=href,frame=src,form=,fieldset="
; Although this directive belongs to the core part of PHP, it is used for the configuration of the Session module
; extension =
; Load dynamic extensions when PHP starts. For example: extension=mysqli.so
; "=" After that, only the name of the module file can be used, and no path information can be included.
; Path information should only be provided by the extension_dir directive.
; Idea, on Windows, the following extensions are already built-in:
; bcmath; calendar; com_dotnet; ctype; session; filter; ftp;
; tokenizer ; zlib ; SimpleXML ; dom ; SPL ; wddx ; xml ; xmlreader ; xmlwriter Valid
cgi.discard_path = Off
; No documentation yet (new directive for PHP6)
cgi.fix_pathinfo = On
;SYS
; Whether to provide real PATH_INFO/PATH_TRANSLATED support for CGI (comply with cgi specification).
; The previous behavior was to set PATH_TRANSLATED to SCRIPT_FILENAME regardless of PATH_INFO.
; Turning this option on will cause PHP to fix its paths to comply with the CGI specification, otherwise the old non-conforming behavior will still be used.
; You are encouraged to turn this directive on and fix your script to use SCRIPT_FILENAME instead of PATH_TRANSLATED .
; See the cgi specification for more information on PATH_INFO.
cgi.force_redirect = On
;SYS
; Whether to turn on cgi force redirection. It is highly recommended to turn it on to provide security for PHP running in CGI mode.
; If you turn it off yourself, please be responsible for the consequences.
; NOTE: It must be turned off on IIS/OmniHTTPD/Xitami!
cgi.redirect_status_env =
;SYS
; If cgi.force_redirect=On and PHP is running under a server other than Apache and Netscape,
; You may need to set a cgi redirection environment variable name, PHP will look for it to know if it can continue.
; Setting this variable can lead to security vulnerabilities, please be sure to understand what you are doing before setting it.
cgi.rfc2616_headers = 0
; Specifies what headers PHP uses when sending HTTP response codes.
; 0 means sending a "Status: " header, supported by Apache and other web servers.
; If set to 1, PHP uses the RFC2616 standard header.
; Unless you know what you are doing, keep its default value 0
cgi.nph = Off
; Whether to force all requests to send the "Status: 200" status code in CGI mode.
cgi.check_shebang_line =On
;SYS
; CGI PHP checks whether the line starting with #! at the top of the script.
; This start line is necessary if the script is to be run both standalone and in PHP CGI mode.
; If this directive is turned on, CGI mode PHP will skip this line.
fastcgi.impersonate = Off
;SYS
; FastCGI in IIS supports the ability to impersonate client security tokens.
; This enables IIS to define the security context of the request upon which the runtime is based.
; mod_fastcgi in Apache does not support this feature (03/17/2002)
; Set to On if running in IIS, default is Off.
fastcgi.logging = On
;SYS
; Whether to log connections made through FastCGI.
[PHP-Core-Weirdy]
; These options only exist in the documentation, but not in the output of the phpinfo() function
async_send = Off
; Whether to send asynchronously.
from = ;"john@doe.com"
; Define anonymous ftp password (an email address)
;;;;;;;;;;;;;;;;;; ;
;; Near-core module;;
;;;;;;;;;;;;;;;;;
[Pcre]
; Perl compatible regular expression module
pcre.backtrack_limit = 100000
; The maximum number of backtracking steps for PCRE.
pcre.recursion_limit = 100000
; The maximum recursion depth of PCRE.
; If you set this value very high, it may exhaust the process's stack space and cause PHP to crash.
[Session]
; Unless a variable is registered using session_register() or $_SESSION.
; Otherwise, no session records will be automatically added regardless of whether session_start() is used or not.
; Objects that include resource variables or have circular references. Objects that contain references to themselves cannot be saved in the session.
; The register_globals directive affects the storage and restoration of session variables.
session.save_handler = "files"
; The name of the handler that stores and retrieves data associated with the session. Defaults to files ("files").
; If you want to use a custom processor (such as a database-based processor), use "user".
; There is a processor using PostgreSQL: http://sourceforge.net/projects/phpform-ext/
session.save_path = "/tmp"
; Parameters passed to the storage processor. For the files processor, this value is the path to the session data file where the session data file was created.
; The default is the temporary folder path under Windows.
; You can use the pattern "N;[MODE;]/path" to define the path (N is an integer).
; N means using N-level subdirectories instead of saving all data files in one directory.
; [MODE;] Optional, must use octal number, default 600 (=384), indicating the maximum number of session files saved in each directory.
; This is a great idea to improve performance for a large number of sessions.
; Note 0: The double quotes around "N;[MODE;]/path" cannot be omitted.
; Note 1: [MODE;] does not rewrite the umask of the process.
; Note 2: PHP does not automatically create these folder structures. Please use the mod_files.sh script in the ext/session directory to create it.
; Note 3: If the folder can be accessed by insecure users (such as the default "/tmp"), it will cause security vulnerabilities.
; Note 4: Automatic garbage collection will fail when N>0. For details, see the section on garbage collection below.
session.name = "PHPSESSID"
;The session ID identification name used in cookies can only contain letters and numbers.
session.auto_start = Off
; Automatically initialize the session when the customer visits any page, disabled by default.
; Because class definitions must be loaded before the session is started, you cannot store objects in the session if this option is turned on.
session.serialize_handler = "php"
; Processor used to serialize/deserialize data, php is a standard serialization/deserialization processor.
; Alternatively, you can use "php_binary". When WDDX support is enabled, only "wddx" can be used.
session.gc_probability = 1
session.gc_divisor = 100
; Defines the probability of starting the garbage collection program every time the session is initialized.
; The calculation formula for this collection probability is as follows: session.gc_probability/session.gc_divisor
; The more frequently the session page is accessed, the smaller the probability should be. The recommended value is 1/1000~5000.
session.gc_maxlifetime = 1440
; After the number of seconds indicated by this parameter, the saved data will be considered 'garbage' and cleaned by the garbage collection program.
; The judgment criterion is the last time the data was accessed (for the FAT file system, the last time the data was refreshed).
; If multiple scripts share the same session.save_path directory but have different session.gc_maxlifetimes,
; then the minimum value among all session.gc_maxlifetime directives will prevail.
; If you use multiple levels of subdirectories to store data files, the garbage collection process will not start automatically.
; You must use a shell script, cron entry, or other method written by yourself to perform garbage collection.
; For example, the following script is equivalent to setting "session.gc_maxlifetime=1440" (24 minutes):
; cd /path/to/sessi****; find -cmin +24 | xargs rm
session.referer_check =
; If the "Referer" field in the request header does not contain the string specified here, the session ID will be considered invalid.
; Note: If the "Referer" field does not exist at all in the request header, the session ID will still be considered valid.
; The default is empty, that is, no check is performed (all are considered valid).
session.entropy_file = ;"/dev/urandom"
; An additional external high-entropy resource (file) used to create the session ID,
; such as "/dev/random" or "/dev/random" on UNIX systems "/dev/urandom"
session.entropy_length = 0
; Number of bytes to read from high-entropy resources (recommended value: 16).
session.use_cookies = On
; Whether to use cookies to save the session ID on the client
session.use_only_cookies = Off
; Whether to only use cookies to save the session ID on the client. The default value for PHP6 is On.
; Turning this option on can avoid the security issues caused by using URL to pass the session.
; But clients with cookies disabled will make the session not work.
session.cookie_lifetime = 0
; Pass the session ID cookie validity period (seconds), 0 means it is only valid while the browser is open.
session.cookie_path = "/"
; Pass the cookie path of the session ID.
session.cookie_domain =
; Pass the cookie scope of the session ID.
; The default is empty to indicate the host name generated according to the cookie specification.
session.cookie_secure = Off
; Whether to only send cookies through secure connections (https).
session.cookie_httponly = Off
; Whether to add the httpOnly flag in the cookie (only HTTP protocol access is allowed),
; This will cause client scripts (JavaScript, etc.) to be unable to access the cookie.
; Turning this command on can effectively prevent session ID hijacking through XSS attacks.
session.cache_limiter = "nocache"
; Set to {nocache|private|public} to specify cache control mode for session pages,
; or set to empty to prevent caching disabled from being sent in the http response header Order.
session.cache_expire = 180
; Specifies the validity period (minutes) of the session page in the client cache
; When session.cache_limiter=nocache, this setting is invalid.
session.use_trans_sid = Off
; Whether to use clear code to display SID (session ID) in the URL.
; It is prohibited by default because it will bring security risks to your users:
; 1- Users may tell other people the URL containing a valid sid through email/irc/QQ/MSN....
; 2- URLs containing valid sid's may be saved on public computers.
; 3- Users may save URLs with fixed sids in their favorites or browsing history.
; URL-based session management always carries more risks than cookie-based session management and should be disabled.
session.bug_compat_42 = On
session.bug_compat_warn = On
; Versions before PHP4.2 have an unspecified "BUG":
; Allow global initialization even when register_globals=Off session variable,
; If you use this feature in PHP 4.3 or later, a warning will be displayed.
; It is recommended to close this "BUG" and display a warning. PHP6 has deleted these two instructions, which is equivalent to setting them all to Off.
session.hash_function = 0
; Hash algorithm for generating SID. SHA-1 is more secure
; 0: MD5 (128 bits)
; 1: SHA-1 (160 bits)
; It is recommended to use SHA-1.
session.hash_bits_per_character = 4
; Specifies how many bits are saved in each character in the SID string,
; These binary numbers are the results of the hash function.
; 4: 0-9, a-f
; 5: 0-9, a-v
; 6: 0-9, a-z, A-Z, "-", ","
; The recommended value is 5
url_rewriter.tags = "a=href,area=href,frame=src,form=,fieldset="
; This command belongs to the core part of PHP and does not belong to the Session module.
; Specify which HTML tags to rewrite to include SID (only valid when session.use_trans_sid=On)
; form and fieldset are special:
; If you include them, the URL rewriter will add a hidden " ", which contains additional information that should be appended to the URL.
; If you want to comply with XHTML standards, please remove the form item and add