From 0e1d02e5b71b380d0eb58f6a58f01ec5b2f6bf0e Mon Sep 17 00:00:00 2001 From: Aldarien Date: Tue, 30 Nov 2021 18:02:29 -0300 Subject: [PATCH] Docker --- Dockerfile | 12 + docker-compose.yml | 54 ++ nginx.conf | 22 + php.ini | 1945 ++++++++++++++++++++++++++++++++++++++++++++ php.prod.ini | Bin 0 -> 148950 bytes 5 files changed, 2033 insertions(+) create mode 100644 Dockerfile create mode 100644 docker-compose.yml create mode 100644 nginx.conf create mode 100644 php.ini create mode 100644 php.prod.ini diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..a0644ad --- /dev/null +++ b/Dockerfile @@ -0,0 +1,12 @@ +FROM php:8-fpm + +RUN apt-get update -y && apt-get install -y zip libzip-dev git + +RUN docker-php-ext-install pdo pdo_mysql zip + +RUN pecl install xdebug-3.1.1 \ + && docker-php-ext-enable xdebug + +WORKDIR /code + +COPY --from=composer /usr/bin/composer /usr/bin/composer diff --git a/docker-compose.yml b/docker-compose.yml new file mode 100644 index 0000000..f28449f --- /dev/null +++ b/docker-compose.yml @@ -0,0 +1,54 @@ +version: '3' + +x-restart: + &restart + restart: unless-stopped +x-timezone: + &tz + TZ: America/Santiago + +services: + proxy: + image: nginx:alpine + container_name: incoviba_proxy + <<: *restart + environment: *tz + ports: + - "8081:80" + volumes: + - ./:/code + - ./nginx.conf:/etc/nginx/conf.d/default.conf + api: + build: + dockerfile: Dockerfile + container_name: incoviba_api + <<: *restart + environment: *tz + env_file: + - .env + - .db.env + - .api.key + volumes: + - ./:/code + - ./php.ini:/usr/local/etc/php/conf.d/docker.ini + - ./logs/php/:/var/log/php/ + + db: + container_name: db + image: mariadb:latest + <<: *restart + environment: *tz + env_file: .db.env + volumes: + - incoviba_data:/var/lib/mysql + adminer: + container_name: adminer + image: adminer:latest + <<: *restart + environment: *tz + ports: + - "8083:8080" + env_file: .adminer.env + +volumes: + incoviba_data: {} diff --git a/nginx.conf b/nginx.conf new file mode 100644 index 0000000..03fa2d0 --- /dev/null +++ b/nginx.conf @@ -0,0 +1,22 @@ +server { + listen 80; + server_name api; + index index.php; + error_log /code/logs/error.log; + access_log /code/logs/access.log; + root /code/public; + + location / { + try_files $uri /index.php$is_args$args; + } + + location ~ \.php { + try_files $uri =404; + fastcgi_split_path_info ^(.+\.php)(/.+)$; + include fastcgi_params; + fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; + fastcgi_param SCRIPT_NAME $fastcgi_script_name; + fastcgi_index index.php; + fastcgi_pass api:9000; + } +} diff --git a/php.ini b/php.ini new file mode 100644 index 0000000..3efb34a --- /dev/null +++ b/php.ini @@ -0,0 +1,1945 @@ +[PHP] + +;;;;;;;;;;;;;;;;;;; +; About php.ini ; +;;;;;;;;;;;;;;;;;;; +; PHP's initialization file, generally called php.ini, is responsible for +; configuring many of the aspects of PHP's behavior. + +; PHP attempts to find and load this configuration from a number of locations. +; The following is a summary of its search order: +; 1. SAPI module specific location. +; 2. The PHPRC environment variable. (As of PHP 5.2.0) +; 3. A number of predefined registry keys on Windows (As of PHP 5.2.0) +; 4. Current working directory (except CLI) +; 5. The web server's directory (for SAPI modules), or directory of PHP +; (otherwise in Windows) +; 6. The directory from the --with-config-file-path compile time option, or the +; Windows directory (usually C:\windows) +; See the PHP docs for more specific information. +; http://php.net/configuration.file + +; The syntax of the file is extremely simple. Whitespace and lines +; beginning with a semicolon are silently ignored (as you probably guessed). +; Section headers (e.g. [Foo]) are also silently ignored, even though +; they might mean something in the future. + +; Directives following the section heading [PATH=/www/mysite] only +; apply to PHP files in the /www/mysite directory. Directives +; following the section heading [HOST=www.example.com] only apply to +; PHP files served from www.example.com. Directives set in these +; special sections cannot be overridden by user-defined INI files or +; at runtime. Currently, [PATH=] and [HOST=] sections only work under +; CGI/FastCGI. +; http://php.net/ini.sections + +; Directives are specified using the following syntax: +; directive = value +; Directive names are *case sensitive* - foo=bar is different from FOO=bar. +; Directives are variables used to configure PHP or PHP extensions. +; There is no name validation. If PHP can't find an expected +; directive because it is not set or is mistyped, a default value will be used. + +; The value can be a string, a number, a PHP constant (e.g. E_ALL or M_PI), one +; of the INI constants (On, Off, True, False, Yes, No and None) or an expression +; (e.g. E_ALL & ~E_NOTICE), a quoted string ("bar"), or a reference to a +; previously set variable or directive (e.g. ${foo}) + +; Expressions in the INI file are limited to bitwise operators and parentheses: +; | bitwise OR +; ^ bitwise XOR +; & bitwise AND +; ~ bitwise NOT +; ! boolean NOT + +; Boolean flags can be turned on using the values 1, On, True or Yes. +; They can be turned off using the values 0, Off, False or No. + +; An empty string can be denoted by simply not writing anything after the equal +; sign, or by using the None keyword: + +; foo = ; sets foo to an empty string +; foo = None ; sets foo to an empty string +; foo = "None" ; sets foo to the string 'None' + +; If you use constants in your value, and these constants belong to a +; dynamically loaded extension (either a PHP extension or a Zend extension), +; you may only use these constants *after* the line that loads the extension. + +;;;;;;;;;;;;;;;;;;; +; About this file ; +;;;;;;;;;;;;;;;;;;; +; PHP comes packaged with two INI files. One that is recommended to be used +; in production environments and one that is recommended to be used in +; development environments. + +; php.ini-production contains settings which hold security, performance and +; best practices at its core. But please be aware, these settings may break +; compatibility with older or less security conscience applications. We +; recommending using the production ini in production and testing environments. + +; php.ini-development is very similar to its production variant, except it is +; much more verbose when it comes to errors. We recommend using the +; development version only in development environments, as errors shown to +; application users can inadvertently leak otherwise secure information. + +; This is the php.ini-development INI file. + +;;;;;;;;;;;;;;;;;;; +; Quick Reference ; +;;;;;;;;;;;;;;;;;;; + +; The following are all the settings which are different in either the production +; or development versions of the INIs with respect to PHP's default behavior. +; Please see the actual settings later in the document for more details as to why +; we recommend these changes in PHP's behavior. + +; display_errors +; Default Value: On +; Development Value: On +; Production Value: Off + +; display_startup_errors +; Default Value: On +; Development Value: On +; Production Value: Off + +; error_reporting +; Default Value: E_ALL +; Development Value: E_ALL +; Production Value: E_ALL & ~E_DEPRECATED & ~E_STRICT + +; log_errors +; Default Value: Off +; Development Value: On +; Production Value: On + +; max_input_time +; Default Value: -1 (Unlimited) +; Development Value: 60 (60 seconds) +; Production Value: 60 (60 seconds) + +; output_buffering +; Default Value: Off +; Development Value: 4096 +; Production Value: 4096 + +; register_argc_argv +; Default Value: On +; Development Value: Off +; Production Value: Off + +; request_order +; Default Value: None +; Development Value: "GP" +; Production Value: "GP" + +; session.gc_divisor +; Default Value: 100 +; Development Value: 1000 +; Production Value: 1000 + +; session.sid_bits_per_character +; Default Value: 4 +; Development Value: 5 +; Production Value: 5 + +; short_open_tag +; Default Value: On +; Development Value: Off +; Production Value: Off + +; variables_order +; Default Value: "EGPCS" +; Development Value: "GPCS" +; Production Value: "GPCS" + +; zend.exception_ignore_args +; Default Value: Off +; Development Value: Off +; Production Value: On + +; zend.exception_string_param_max_len +; Default Value: 15 +; Development Value: 15 +; Production Value: 0 + +;;;;;;;;;;;;;;;;;;;; +; php.ini Options ; +;;;;;;;;;;;;;;;;;;;; +; Name for user-defined php.ini (.htaccess) files. Default is ".user.ini" +;user_ini.filename = ".user.ini" + +; To disable this feature set this option to an empty value +;user_ini.filename = + +; TTL for user-defined php.ini files (time-to-live) in seconds. Default is 300 seconds (5 minutes) +;user_ini.cache_ttl = 300 + +;;;;;;;;;;;;;;;;;;;; +; Language Options ; +;;;;;;;;;;;;;;;;;;;; + +; Enable the PHP scripting language engine under Apache. +; http://php.net/engine +;engine = On + +; This directive determines whether or not PHP will recognize code between +; tags as PHP source which should be processed as such. It is +; generally recommended that should be used and that this feature +; should be disabled, as enabling it may result in issues when generating XML +; documents, however this remains supported for backward compatibility reasons. +; Note that this directive does not control the would work. +; http://php.net/syntax-highlighting +;highlight.string = #DD0000 +;highlight.comment = #FF9900 +;highlight.keyword = #007700 +;highlight.default = #0000BB +;highlight.html = #000000 + +; If enabled, the request will be allowed to complete even if the user aborts +; the request. Consider enabling it if executing long requests, which may end up +; being interrupted by the user or a browser timing out. PHP's default behavior +; is to disable this feature. +; http://php.net/ignore-user-abort +;ignore_user_abort = On + +; Determines the size of the realpath cache to be used by PHP. This value should +; be increased on systems where PHP opens many files to reflect the quantity of +; the file operations performed. +; Note: if open_basedir is set, the cache is disabled +; http://php.net/realpath-cache-size +;realpath_cache_size = 4096k + +; Duration of time, in seconds for which to cache realpath information for a given +; file or directory. For systems with rarely changing files, consider increasing this +; value. +; http://php.net/realpath-cache-ttl +;realpath_cache_ttl = 120 + +; Enables or disables the circular reference collector. +; http://php.net/zend.enable-gc +;zend.enable_gc = On + +; If enabled, scripts may be written in encodings that are incompatible with +; the scanner. CP936, Big5, CP949 and Shift_JIS are the examples of such +; encodings. To use this feature, mbstring extension must be enabled. +;zend.multibyte = Off + +; Allows to set the default encoding for the scripts. This value will be used +; unless "declare(encoding=...)" directive appears at the top of the script. +; Only affects if zend.multibyte is set. +;zend.script_encoding = + +; Allows to include or exclude arguments from stack traces generated for exceptions. +; In production, it is recommended to turn this setting on to prohibit the output +; of sensitive information in stack traces +; Default Value: Off +; Development Value: Off +; Production Value: On +;zend.exception_ignore_args = Off + +; Allows setting the maximum string length in an argument of a stringified stack trace +; to a value between 0 and 1000000. +; This has no effect when zend.exception_ignore_args is enabled. +; Default Value: 15 +; Development Value: 15 +; Production Value: 0 +;zend.exception_string_param_max_len = 15 + +;;;;;;;;;;;;;;;;; +; Miscellaneous ; +;;;;;;;;;;;;;;;;; + +; Decides whether PHP may expose the fact that it is installed on the server +; (e.g. by adding its signature to the Web server header). It is no security +; threat in any way, but it makes it possible to determine whether you use PHP +; on your server or not. +; http://php.net/expose-php +;expose_php = On + +;;;;;;;;;;;;;;;;;;; +; Resource Limits ; +;;;;;;;;;;;;;;;;;;; + +; Maximum execution time of each script, in seconds +; http://php.net/max-execution-time +; Note: This directive is hardcoded to 0 for the CLI SAPI +;max_execution_time = 30 + +; Maximum amount of time each script may spend parsing request data. It's a good +; idea to limit this time on productions servers in order to eliminate unexpectedly +; long running scripts. +; Note: This directive is hardcoded to -1 for the CLI SAPI +; Default Value: -1 (Unlimited) +; Development Value: 60 (60 seconds) +; Production Value: 60 (60 seconds) +; http://php.net/max-input-time +;max_input_time = 60 + +; Maximum input variable nesting level +; http://php.net/max-input-nesting-level +;max_input_nesting_level = 64 + +; How many GET/POST/COOKIE input variables may be accepted +;max_input_vars = 1000 + +; Maximum amount of memory a script may consume +; http://php.net/memory-limit +;memory_limit = 128M + +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +; Error handling and logging ; +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; + +; This directive informs PHP of which errors, warnings and notices you would like +; it to take action for. The recommended way of setting values for this +; directive is through the use of the error level constants and bitwise +; operators. The error level constants are below here for convenience as well as +; some common settings and their meanings. +; By default, PHP is set to take action on all errors, notices and warnings EXCEPT +; those related to E_NOTICE and E_STRICT, which together cover best practices and +; recommended coding standards in PHP. For performance reasons, this is the +; recommend error reporting setting. Your production server shouldn't be wasting +; resources complaining about best practices and coding standards. That's what +; development servers and development settings are for. +; Note: The php.ini-development file has this setting as E_ALL. This +; means it pretty much reports everything which is exactly what you want during +; development and early testing. +; +; Error Level Constants: +; E_ALL - All errors and warnings (includes E_STRICT as of PHP 5.4.0) +; E_ERROR - fatal run-time errors +; E_RECOVERABLE_ERROR - almost fatal run-time errors +; E_WARNING - run-time warnings (non-fatal errors) +; E_PARSE - compile-time parse errors +; E_NOTICE - run-time notices (these are warnings which often result +; from a bug in your code, but it's possible that it was +; intentional (e.g., using an uninitialized variable and +; relying on the fact it is automatically initialized to an +; empty string) +; E_STRICT - run-time notices, enable to have PHP suggest changes +; to your code which will ensure the best interoperability +; and forward compatibility of your code +; E_CORE_ERROR - fatal errors that occur during PHP's initial startup +; E_CORE_WARNING - warnings (non-fatal errors) that occur during PHP's +; initial startup +; E_COMPILE_ERROR - fatal compile-time errors +; E_COMPILE_WARNING - compile-time warnings (non-fatal errors) +; E_USER_ERROR - user-generated error message +; E_USER_WARNING - user-generated warning message +; E_USER_NOTICE - user-generated notice message +; E_DEPRECATED - warn about code that will not work in future versions +; of PHP +; E_USER_DEPRECATED - user-generated deprecation warnings +; +; Common Values: +; E_ALL (Show all errors, warnings and notices including coding standards.) +; E_ALL & ~E_NOTICE (Show all errors, except for notices) +; E_ALL & ~E_NOTICE & ~E_STRICT (Show all errors, except for notices and coding standards warnings.) +; E_COMPILE_ERROR|E_RECOVERABLE_ERROR|E_ERROR|E_CORE_ERROR (Show only errors) +; Default Value: E_ALL +; Development Value: E_ALL +; Production Value: E_ALL & ~E_DEPRECATED & ~E_STRICT +; http://php.net/error-reporting +;error_reporting = E_ALL + +; This directive controls whether or not and where PHP will output errors, +; notices and warnings too. Error output is very useful during development, but +; it could be very dangerous in production environments. Depending on the code +; which is triggering the error, sensitive information could potentially leak +; out of your application such as database usernames and passwords or worse. +; For production environments, we recommend logging errors rather than +; sending them to STDOUT. +; Possible Values: +; Off = Do not display any errors +; stderr = Display errors to STDERR (affects only CGI/CLI binaries!) +; On or stdout = Display errors to STDOUT +; Default Value: On +; Development Value: On +; Production Value: Off +; http://php.net/display-errors +;display_errors = On + +; The display of errors which occur during PHP's startup sequence are handled +; separately from display_errors. We strongly recommend you set this to 'off' +; for production servers to avoid leaking configuration details. +; Default Value: On +; Development Value: On +; Production Value: Off +; http://php.net/display-startup-errors +;display_startup_errors = On + +; Besides displaying errors, PHP can also log errors to locations such as a +; server-specific log, STDERR, or a location specified by the error_log +; directive found below. While errors should not be displayed on productions +; servers they should still be monitored and logging is a great way to do that. +; Default Value: Off +; Development Value: On +; Production Value: On +; http://php.net/log-errors +log_errors = On + +; Set maximum length of log_errors. In error_log information about the source is +; added. The default is 1024 and 0 allows to not apply any maximum length at all. +; http://php.net/log-errors-max-len +;log_errors_max_len = 1024 + +; Do not log repeated messages. Repeated errors must occur in same file on same +; line unless ignore_repeated_source is set true. +; http://php.net/ignore-repeated-errors +;ignore_repeated_errors = Off + +; Ignore source of message when ignoring repeated messages. When this setting +; is On you will not log errors with repeated messages from different files or +; source lines. +; http://php.net/ignore-repeated-source +;ignore_repeated_source = Off + +; If this parameter is set to Off, then memory leaks will not be shown (on +; stdout or in the log). This is only effective in a debug compile, and if +; error reporting includes E_WARNING in the allowed list +; http://php.net/report-memleaks +;report_memleaks = On + +; This setting is off by default. +;report_zend_debug = 0 + +; Turn off normal error reporting and emit XML-RPC error XML +; http://php.net/xmlrpc-errors +;xmlrpc_errors = 0 + +; An XML-RPC faultCode +;xmlrpc_error_number = 0 + +; When PHP displays or logs an error, it has the capability of formatting the +; error message as HTML for easier reading. This directive controls whether +; the error message is formatted as HTML or not. +; Note: This directive is hardcoded to Off for the CLI SAPI +; http://php.net/html-errors +;html_errors = On + +; If html_errors is set to On *and* docref_root is not empty, then PHP +; produces clickable error messages that direct to a page describing the error +; or function causing the error in detail. +; You can download a copy of the PHP manual from http://php.net/docs +; and change docref_root to the base URL of your local copy including the +; leading '/'. You must also specify the file extension being used including +; the dot. PHP's default behavior is to leave these settings empty, in which +; case no links to documentation are generated. +; Note: Never use this feature for production boxes. +; http://php.net/docref-root +; Examples +;docref_root = "/phpmanual/" + +; http://php.net/docref-ext +;docref_ext = .html + +; String to output before an error message. PHP's default behavior is to leave +; this setting blank. +; http://php.net/error-prepend-string +; Example: +;error_prepend_string = "" + +; String to output after an error message. PHP's default behavior is to leave +; this setting blank. +; http://php.net/error-append-string +; Example: +;error_append_string = "" + +; Log errors to specified file. PHP's default behavior is to leave this value +; empty. +; http://php.net/error-log +; Example: +;error_log = php_errors.log +; Log errors to syslog (Event Log on Windows). +;error_log = syslog +error_log = /var/log/php/error.log + +; The syslog ident is a string which is prepended to every message logged +; to syslog. Only used when error_log is set to syslog. +;syslog.ident = php + +; The syslog facility is used to specify what type of program is logging +; the message. Only used when error_log is set to syslog. +;syslog.facility = user + +; Set this to disable filtering control characters (the default). +; Some loggers only accept NVT-ASCII, others accept anything that's not +; control characters. If your logger accepts everything, then no filtering +; is needed at all. +; Allowed values are: +; ascii (all printable ASCII characters and NL) +; no-ctrl (all characters except control characters) +; all (all characters) +; raw (like "all", but messages are not split at newlines) +; http://php.net/syslog.filter +;syslog.filter = ascii + +;windows.show_crt_warning +; Default value: 0 +; Development value: 0 +; Production value: 0 + +;;;;;;;;;;;;;;;;; +; Data Handling ; +;;;;;;;;;;;;;;;;; + +; The separator used in PHP generated URLs to separate arguments. +; PHP's default setting is "&". +; http://php.net/arg-separator.output +; Example: +;arg_separator.output = "&" + +; List of separator(s) used by PHP to parse input URLs into variables. +; PHP's default setting is "&". +; NOTE: Every character in this directive is considered as separator! +; http://php.net/arg-separator.input +; Example: +;arg_separator.input = ";&" + +; This directive determines which super global arrays are registered when PHP +; starts up. G,P,C,E & S are abbreviations for the following respective super +; globals: GET, POST, COOKIE, ENV and SERVER. There is a performance penalty +; paid for the registration of these arrays and because ENV is not as commonly +; used as the others, ENV is not recommended on productions servers. You +; can still get access to the environment variables through getenv() should you +; need to. +; Default Value: "EGPCS" +; Development Value: "GPCS" +; Production Value: "GPCS"; +; http://php.net/variables-order +;variables_order = "GPCS" + +; This directive determines which super global data (G,P & C) should be +; registered into the super global array REQUEST. If so, it also determines +; the order in which that data is registered. The values for this directive +; are specified in the same manner as the variables_order directive, +; EXCEPT one. Leaving this value empty will cause PHP to use the value set +; in the variables_order directive. It does not mean it will leave the super +; globals array REQUEST empty. +; Default Value: None +; Development Value: "GP" +; Production Value: "GP" +; http://php.net/request-order +;request_order = "GP" + +; This directive determines whether PHP registers $argv & $argc each time it +; runs. $argv contains an array of all the arguments passed to PHP when a script +; is invoked. $argc contains an integer representing the number of arguments +; that were passed when the script was invoked. These arrays are extremely +; useful when running scripts from the command line. When this directive is +; enabled, registering these variables consumes CPU cycles and memory each time +; a script is executed. For performance reasons, this feature should be disabled +; on production servers. +; Note: This directive is hardcoded to On for the CLI SAPI +; Default Value: On +; Development Value: Off +; Production Value: Off +; http://php.net/register-argc-argv +;register_argc_argv = Off + +; When enabled, the ENV, REQUEST and SERVER variables are created when they're +; first used (Just In Time) instead of when the script starts. If these +; variables are not used within a script, having this directive on will result +; in a performance gain. The PHP directive register_argc_argv must be disabled +; for this directive to have any effect. +; http://php.net/auto-globals-jit +;auto_globals_jit = On + +; Whether PHP will read the POST data. +; This option is enabled by default. +; Most likely, you won't want to disable this option globally. It causes $_POST +; and $_FILES to always be empty; the only way you will be able to read the +; POST data will be through the php://input stream wrapper. This can be useful +; to proxy requests or to process the POST data in a memory efficient fashion. +; http://php.net/enable-post-data-reading +;enable_post_data_reading = Off + +; Maximum size of POST data that PHP will accept. +; Its value may be 0 to disable the limit. It is ignored if POST data reading +; is disabled through enable_post_data_reading. +; http://php.net/post-max-size +;post_max_size = 8M + +; Automatically add files before PHP document. +; http://php.net/auto-prepend-file +;auto_prepend_file = + +; Automatically add files after PHP document. +; http://php.net/auto-append-file +;auto_append_file = + +; By default, PHP will output a media type using the Content-Type header. To +; disable this, simply set it to be empty. +; +; PHP's built-in default media type is set to text/html. +; http://php.net/default-mimetype +;default_mimetype = "text/html" + +; PHP's default character set is set to UTF-8. +; http://php.net/default-charset +;default_charset = "UTF-8" + +; PHP internal character encoding is set to empty. +; If empty, default_charset is used. +; http://php.net/internal-encoding +;internal_encoding = + +; PHP input character encoding is set to empty. +; If empty, default_charset is used. +; http://php.net/input-encoding +;input_encoding = + +; PHP output character encoding is set to empty. +; If empty, default_charset is used. +; See also output_buffer. +; http://php.net/output-encoding +;output_encoding = + +;;;;;;;;;;;;;;;;;;;;;;;;; +; Paths and Directories ; +;;;;;;;;;;;;;;;;;;;;;;;;; + +; UNIX: "/path1:/path2" +;include_path = ".:/php/includes" +; +; Windows: "\path1;\path2" +;include_path = ".;c:\php\includes" +; +; PHP's default setting for include_path is ".;/path/to/php/pear" +; http://php.net/include-path + +; The root of the PHP pages, used only if nonempty. +; if PHP was not compiled with FORCE_REDIRECT, you SHOULD set doc_root +; if you are running php as a CGI under any web server (other than IIS) +; see documentation for security issues. The alternate is to use the +; cgi.force_redirect configuration below +; http://php.net/doc-root +;doc_root = + +; The directory under which PHP opens the script using /~username used only +; if nonempty. +; http://php.net/user-dir +;user_dir = + +; Directory in which the loadable extensions (modules) reside. +; http://php.net/extension-dir +;extension_dir = "./" +; On windows: +;extension_dir = "ext" + +; Directory where the temporary files should be placed. +; Defaults to the system default (see sys_get_temp_dir) +;sys_temp_dir = "/tmp" + +; Whether or not to enable the dl() function. The dl() function does NOT work +; properly in multithreaded servers, such as IIS or Zeus, and is automatically +; disabled on them. +; http://php.net/enable-dl +;enable_dl = Off + +; cgi.force_redirect is necessary to provide security running PHP as a CGI under +; most web servers. Left undefined, PHP turns this on by default. You can +; turn it off here AT YOUR OWN RISK +; **You CAN safely turn this off for IIS, in fact, you MUST.** +; http://php.net/cgi.force-redirect +;cgi.force_redirect = 1 + +; if cgi.nph is enabled it will force cgi to always sent Status: 200 with +; every request. PHP's default behavior is to disable this feature. +;cgi.nph = 1 + +; if cgi.force_redirect is turned on, and you are not running under Apache or Netscape +; (iPlanet) web servers, you MAY need to set an environment variable name that PHP +; will look for to know it is OK to continue execution. Setting this variable MAY +; cause security issues, KNOW WHAT YOU ARE DOING FIRST. +; http://php.net/cgi.redirect-status-env +;cgi.redirect_status_env = + +; cgi.fix_pathinfo provides *real* PATH_INFO/PATH_TRANSLATED support for CGI. PHP's +; previous behaviour was to set PATH_TRANSLATED to SCRIPT_FILENAME, and to not grok +; what PATH_INFO is. For more information on PATH_INFO, see the cgi specs. Setting +; this to 1 will cause PHP CGI to fix its paths to conform to the spec. A setting +; of zero causes PHP to behave as before. Default is 1. You should fix your scripts +; to use SCRIPT_FILENAME rather than PATH_TRANSLATED. +; http://php.net/cgi.fix-pathinfo +;cgi.fix_pathinfo=1 + +; if cgi.discard_path is enabled, the PHP CGI binary can safely be placed outside +; of the web tree and people will not be able to circumvent .htaccess security. +;cgi.discard_path=1 + +; FastCGI under IIS supports the ability to impersonate +; security tokens of the calling client. This allows IIS to define the +; security context that the request runs under. mod_fastcgi under Apache +; does not currently support this feature (03/17/2002) +; Set to 1 if running under IIS. Default is zero. +; http://php.net/fastcgi.impersonate +;fastcgi.impersonate = 1 + +; Disable logging through FastCGI connection. PHP's default behavior is to enable +; this feature. +;fastcgi.logging = 0 + +; cgi.rfc2616_headers configuration option tells PHP what type of headers to +; use when sending HTTP response code. If set to 0, PHP sends Status: header that +; is supported by Apache. When this option is set to 1, PHP will send +; RFC2616 compliant header. +; Default is zero. +; http://php.net/cgi.rfc2616-headers +;cgi.rfc2616_headers = 0 + +; cgi.check_shebang_line controls whether CGI PHP checks for line starting with #! +; (shebang) at the top of the running script. This line might be needed if the +; script support running both as stand-alone script and via PHP CGI<. PHP in CGI +; mode skips this line and ignores its content if this directive is turned on. +; http://php.net/cgi.check-shebang-line +;cgi.check_shebang_line=1 + +;;;;;;;;;;;;;;;; +; File Uploads ; +;;;;;;;;;;;;;;;; + +; Whether to allow HTTP file uploads. +; http://php.net/file-uploads +;file_uploads = On + +; Temporary directory for HTTP uploaded files (will use system default if not +; specified). +; http://php.net/upload-tmp-dir +;upload_tmp_dir = + +; Maximum allowed size for uploaded files. +; http://php.net/upload-max-filesize +;upload_max_filesize = 2M + +; Maximum number of files that can be uploaded via a single request +;max_file_uploads = 20 + +;;;;;;;;;;;;;;;;;; +; Fopen wrappers ; +;;;;;;;;;;;;;;;;;; + +; Whether to allow the treatment of URLs (like http:// or ftp://) as files. +; http://php.net/allow-url-fopen +;allow_url_fopen = On + +; Whether to allow include/require to open URLs (like http:// or ftp://) as files. +; http://php.net/allow-url-include +;allow_url_include = Off + +; Define the anonymous ftp password (your email address). PHP's default setting +; for this is empty. +; http://php.net/from +;from="john@doe.com" + +; Define the User-Agent string. PHP's default setting for this is empty. +; http://php.net/user-agent +;user_agent="PHP" + +; Default timeout for socket based streams (seconds) +; http://php.net/default-socket-timeout +;default_socket_timeout = 60 + +; If your scripts have to deal with files from Macintosh systems, +; or you are running on a Mac and need to deal with files from +; unix or win32 systems, setting this flag will cause PHP to +; automatically detect the EOL character in those files so that +; fgets() and file() will work regardless of the source of the file. +; http://php.net/auto-detect-line-endings +;auto_detect_line_endings = Off + +;;;;;;;;;;;;;;;;;;;;;; +; Dynamic Extensions ; +;;;;;;;;;;;;;;;;;;;;;; + +; If you wish to have an extension loaded automatically, use the following +; syntax: +; +; extension=modulename +; +; For example: +; +; extension=mysqli +; +; When the extension library to load is not located in the default extension +; directory, You may specify an absolute path to the library file: +; +; extension=/path/to/extension/mysqli.so +; +; Note : The syntax used in previous PHP versions ('extension=.so' and +; 'extension='php_.dll') is supported for legacy reasons and may be +; deprecated in a future PHP major version. So, when it is possible, please +; move to the new ('extension=) syntax. +; +; Notes for Windows environments : +; +; - Many DLL files are located in the extensions/ (PHP 4) or ext/ (PHP 5+) +; extension folders as well as the separate PECL DLL download (PHP 5+). +; Be sure to appropriately set the extension_dir directive. +; +;extension=bz2 +;extension=curl +;extension=ffi +;extension=ftp +;extension=fileinfo +;extension=gd +;extension=gettext +;extension=gmp +;extension=intl +;extension=imap +;extension=ldap +;extension=mbstring +;extension=exif ; Must be after mbstring as it depends on it +;extension=mysqli +;extension=oci8_12c ; Use with Oracle Database 12c Instant Client +;extension=oci8_19 ; Use with Oracle Database 19 Instant Client +;extension=odbc +;extension=openssl +;extension=pdo_firebird +;extension=pdo_mysql +;extension=pdo_oci +;extension=pdo_odbc +;extension=pdo_pgsql +;extension=pdo_sqlite +;extension=pgsql +;extension=shmop + +; The MIBS data available in the PHP distribution must be installed. +; See http://www.php.net/manual/en/snmp.installation.php +;extension=snmp + +;extension=soap +;extension=sockets +;extension=sodium +;extension=sqlite3 +;extension=tidy +;extension=xsl + +;zend_extension=opcache + +;;;;;;;;;;;;;;;;;;; +; Module Settings ; +;;;;;;;;;;;;;;;;;;; + +;[CLI Server] +; Whether the CLI web server uses ANSI color coding in its terminal output. +;cli_server.color = On + +[Date] +; Defines the default timezone used by the date functions +; http://php.net/date.timezone +date.timezone = America/Santiago + +; http://php.net/date.default-latitude +;date.default_latitude = 31.7667 + +; http://php.net/date.default-longitude +;date.default_longitude = 35.2333 + +; http://php.net/date.sunrise-zenith +;date.sunrise_zenith = 90.833333 + +; http://php.net/date.sunset-zenith +;date.sunset_zenith = 90.833333 + +;[filter] +; http://php.net/filter.default +;filter.default = unsafe_raw + +; http://php.net/filter.default-flags +;filter.default_flags = + +;[iconv] +; Use of this INI entry is deprecated, use global input_encoding instead. +; If empty, default_charset or input_encoding or iconv.input_encoding is used. +; The precedence is: default_charset < input_encoding < iconv.input_encoding +;iconv.input_encoding = + +; Use of this INI entry is deprecated, use global internal_encoding instead. +; If empty, default_charset or internal_encoding or iconv.internal_encoding is used. +; The precedence is: default_charset < internal_encoding < iconv.internal_encoding +;iconv.internal_encoding = + +; Use of this INI entry is deprecated, use global output_encoding instead. +; If empty, default_charset or output_encoding or iconv.output_encoding is used. +; The precedence is: default_charset < output_encoding < iconv.output_encoding +; To use an output encoding conversion, iconv's output handler must be set +; otherwise output encoding conversion cannot be performed. +;iconv.output_encoding = + +;[imap] +; rsh/ssh logins are disabled by default. Use this INI entry if you want to +; enable them. Note that the IMAP library does not filter mailbox names before +; passing them to rsh/ssh command, thus passing untrusted data to this function +; with rsh/ssh enabled is insecure. +;imap.enable_insecure_rsh=0 + +;[intl] +;intl.default_locale = +; This directive allows you to produce PHP errors when some error +; happens within intl functions. The value is the level of the error produced. +; Default is 0, which does not produce any errors. +;intl.error_level = E_WARNING +;intl.use_exceptions = 0 + +;[sqlite3] +; Directory pointing to SQLite3 extensions +; http://php.net/sqlite3.extension-dir +;sqlite3.extension_dir = + +; SQLite defensive mode flag (only available from SQLite 3.26+) +; When the defensive flag is enabled, language features that allow ordinary +; SQL to deliberately corrupt the database file are disabled. This forbids +; writing directly to the schema, shadow tables (eg. FTS data tables), or +; the sqlite_dbpage virtual table. +; https://www.sqlite.org/c3ref/c_dbconfig_defensive.html +; (for older SQLite versions, this flag has no use) +;sqlite3.defensive = 1 + +;[Pcre] +; PCRE library backtracking limit. +; http://php.net/pcre.backtrack-limit +;pcre.backtrack_limit=100000 + +; PCRE library recursion limit. +; Please note that if you set this value to a high number you may consume all +; the available process stack and eventually crash PHP (due to reaching the +; stack size limit imposed by the Operating System). +; http://php.net/pcre.recursion-limit +;pcre.recursion_limit=100000 + +; Enables or disables JIT compilation of patterns. This requires the PCRE +; library to be compiled with JIT support. +;pcre.jit=1 + +;[Pdo] +; Whether to pool ODBC connections. Can be one of "strict", "relaxed" or "off" +; http://php.net/pdo-odbc.connection-pooling +;pdo_odbc.connection_pooling=strict + +;[Pdo_mysql] +; Default socket name for local MySQL connects. If empty, uses the built-in +; MySQL defaults. +;pdo_mysql.default_socket= + +;[Phar] +; http://php.net/phar.readonly +;phar.readonly = On + +; http://php.net/phar.require-hash +;phar.require_hash = On + +;phar.cache_list = + +;[mail function] +; For Win32 only. +; http://php.net/smtp +;SMTP = localhost +; http://php.net/smtp-port +;smtp_port = 25 + +; For Win32 only. +; http://php.net/sendmail-from +;sendmail_from = me@example.com + +; For Unix only. You may supply arguments as well (default: "sendmail -t -i"). +; http://php.net/sendmail-path +;sendmail_path = + +; Force the addition of the specified parameters to be passed as extra parameters +; to the sendmail binary. These parameters will always replace the value of +; the 5th parameter to mail(). +;mail.force_extra_parameters = + +; Add X-PHP-Originating-Script: that will include uid of the script followed by the filename +;mail.add_x_header = Off + +; The path to a log file that will log all mail() calls. Log entries include +; the full path of the script, line number, To address and headers. +;mail.log = +; Log mail to syslog (Event Log on Windows). +;mail.log = syslog + +;[ODBC] +; http://php.net/odbc.default-db +;odbc.default_db = Not yet implemented + +; http://php.net/odbc.default-user +;odbc.default_user = Not yet implemented + +; http://php.net/odbc.default-pw +;odbc.default_pw = Not yet implemented + +; Controls the ODBC cursor model. +; Default: SQL_CURSOR_STATIC (default). +;odbc.default_cursortype + +; Allow or prevent persistent links. +; http://php.net/odbc.allow-persistent +;odbc.allow_persistent = On + +; Check that a connection is still valid before reuse. +; http://php.net/odbc.check-persistent +;odbc.check_persistent = On + +; Maximum number of persistent links. -1 means no limit. +; http://php.net/odbc.max-persistent +;odbc.max_persistent = -1 + +; Maximum number of links (persistent + non-persistent). -1 means no limit. +; http://php.net/odbc.max-links +;odbc.max_links = -1 + +; Handling of LONG fields. Returns number of bytes to variables. 0 means +; passthru. +; http://php.net/odbc.defaultlrl +;odbc.defaultlrl = 4096 + +; Handling of binary data. 0 means passthru, 1 return as is, 2 convert to char. +; See the documentation on odbc_binmode and odbc_longreadlen for an explanation +; of odbc.defaultlrl and odbc.defaultbinmode +; http://php.net/odbc.defaultbinmode +;odbc.defaultbinmode = 1 + +;[MySQLi] + +; Maximum number of persistent links. -1 means no limit. +; http://php.net/mysqli.max-persistent +;mysqli.max_persistent = -1 + +; Allow accessing, from PHP's perspective, local files with LOAD DATA statements +; http://php.net/mysqli.allow_local_infile +;mysqli.allow_local_infile = On + +; Allow or prevent persistent links. +; http://php.net/mysqli.allow-persistent +;mysqli.allow_persistent = On + +; Maximum number of links. -1 means no limit. +; http://php.net/mysqli.max-links +;mysqli.max_links = -1 + +; Default port number for mysqli_connect(). If unset, mysqli_connect() will use +; the $MYSQL_TCP_PORT or the mysql-tcp entry in /etc/services or the +; compile-time value defined MYSQL_PORT (in that order). Win32 will only look +; at MYSQL_PORT. +; http://php.net/mysqli.default-port +;mysqli.default_port = 3306 + +; Default socket name for local MySQL connects. If empty, uses the built-in +; MySQL defaults. +; http://php.net/mysqli.default-socket +;mysqli.default_socket = + +; Default host for mysqli_connect() (doesn't apply in safe mode). +; http://php.net/mysqli.default-host +;mysqli.default_host = + +; Default user for mysqli_connect() (doesn't apply in safe mode). +; http://php.net/mysqli.default-user +;mysqli.default_user = + +; Default password for mysqli_connect() (doesn't apply in safe mode). +; Note that this is generally a *bad* idea to store passwords in this file. +; *Any* user with PHP access can run 'echo get_cfg_var("mysqli.default_pw") +; and reveal this password! And of course, any users with read access to this +; file will be able to reveal the password as well. +; http://php.net/mysqli.default-pw +;mysqli.default_pw = + +; Allow or prevent reconnect +;mysqli.reconnect = Off + +;[mysqlnd] +; Enable / Disable collection of general statistics by mysqlnd which can be +; used to tune and monitor MySQL operations. +;mysqlnd.collect_statistics = On + +; Enable / Disable collection of memory usage statistics by mysqlnd which can be +; used to tune and monitor MySQL operations. +;mysqlnd.collect_memory_statistics = On + +; Records communication from all extensions using mysqlnd to the specified log +; file. +; http://php.net/mysqlnd.debug +;mysqlnd.debug = + +; Defines which queries will be logged. +;mysqlnd.log_mask = 0 + +; Default size of the mysqlnd memory pool, which is used by result sets. +;mysqlnd.mempool_default_size = 16000 + +; Size of a pre-allocated buffer used when sending commands to MySQL in bytes. +;mysqlnd.net_cmd_buffer_size = 2048 + +; Size of a pre-allocated buffer used for reading data sent by the server in +; bytes. +;mysqlnd.net_read_buffer_size = 32768 + +; Timeout for network requests in seconds. +;mysqlnd.net_read_timeout = 31536000 + +; SHA-256 Authentication Plugin related. File with the MySQL server public RSA +; key. +;mysqlnd.sha256_server_public_key = + +;[OCI8] + +; Connection: Enables privileged connections using external +; credentials (OCI_SYSOPER, OCI_SYSDBA) +; http://php.net/oci8.privileged-connect +;oci8.privileged_connect = Off + +; Connection: The maximum number of persistent OCI8 connections per +; process. Using -1 means no limit. +; http://php.net/oci8.max-persistent +;oci8.max_persistent = -1 + +; Connection: The maximum number of seconds a process is allowed to +; maintain an idle persistent connection. Using -1 means idle +; persistent connections will be maintained forever. +; http://php.net/oci8.persistent-timeout +;oci8.persistent_timeout = -1 + +; Connection: The number of seconds that must pass before issuing a +; ping during oci_pconnect() to check the connection validity. When +; set to 0, each oci_pconnect() will cause a ping. Using -1 disables +; pings completely. +; http://php.net/oci8.ping-interval +;oci8.ping_interval = 60 + +; Connection: Set this to a user chosen connection class to be used +; for all pooled server requests with Oracle 11g Database Resident +; Connection Pooling (DRCP). To use DRCP, this value should be set to +; the same string for all web servers running the same application, +; the database pool must be configured, and the connection string must +; specify to use a pooled server. +;oci8.connection_class = + +; High Availability: Using On lets PHP receive Fast Application +; Notification (FAN) events generated when a database node fails. The +; database must also be configured to post FAN events. +;oci8.events = Off + +; Tuning: This option enables statement caching, and specifies how +; many statements to cache. Using 0 disables statement caching. +; http://php.net/oci8.statement-cache-size +;oci8.statement_cache_size = 20 + +; Tuning: Enables statement prefetching and sets the default number of +; rows that will be fetched automatically after statement execution. +; http://php.net/oci8.default-prefetch +;oci8.default_prefetch = 100 + +; Compatibility. Using On means oci_close() will not close +; oci_connect() and oci_new_connect() connections. +; http://php.net/oci8.old-oci-close-semantics +;oci8.old_oci_close_semantics = Off + +;[PostgreSQL] +; Allow or prevent persistent links. +; http://php.net/pgsql.allow-persistent +;pgsql.allow_persistent = On + +; Detect broken persistent links always with pg_pconnect(). +; Auto reset feature requires a little overheads. +; http://php.net/pgsql.auto-reset-persistent +;pgsql.auto_reset_persistent = Off + +; Maximum number of persistent links. -1 means no limit. +; http://php.net/pgsql.max-persistent +;pgsql.max_persistent = -1 + +; Maximum number of links (persistent+non persistent). -1 means no limit. +; http://php.net/pgsql.max-links +;pgsql.max_links = -1 + +; Ignore PostgreSQL backends Notice message or not. +; Notice message logging require a little overheads. +; http://php.net/pgsql.ignore-notice +;pgsql.ignore_notice = 0 + +; Log PostgreSQL backends Notice message or not. +; Unless pgsql.ignore_notice=0, module cannot log notice message. +; http://php.net/pgsql.log-notice +;pgsql.log_notice = 0 + +;[bcmath] +; Number of decimal digits for all bcmath functions. +; http://php.net/bcmath.scale +;bcmath.scale = 0 + +;[browscap] +; http://php.net/browscap +;browscap = extra/browscap.ini + +;[Session] +; Handler used to store/retrieve data. +; http://php.net/session.save-handler +;session.save_handler = files + +; Argument passed to save_handler. In the case of files, this is the path +; where data files are stored. Note: Windows users have to change this +; variable in order to use PHP's session functions. +; +; The path can be defined as: +; +; session.save_path = "N;/path" +; +; where N is an integer. Instead of storing all the session files in +; /path, what this will do is use subdirectories N-levels deep, and +; store the session data in those directories. This is useful if +; your OS has problems with many files in one directory, and is +; a more efficient layout for servers that handle many sessions. +; +; NOTE 1: PHP will not create this directory structure automatically. +; You can use the script in the ext/session dir for that purpose. +; NOTE 2: See the section on garbage collection below if you choose to +; use subdirectories for session storage +; +; The file storage module creates files using mode 600 by default. +; You can change that by using +; +; session.save_path = "N;MODE;/path" +; +; where MODE is the octal representation of the mode. Note that this +; does not overwrite the process's umask. +; http://php.net/session.save-path +;session.save_path = "/tmp" + +; Whether to use strict session mode. +; Strict session mode does not accept an uninitialized session ID, and +; regenerates the session ID if the browser sends an uninitialized session ID. +; Strict mode protects applications from session fixation via a session adoption +; vulnerability. It is disabled by default for maximum compatibility, but +; enabling it is encouraged. +; https://wiki.php.net/rfc/strict_sessions +;session.use_strict_mode = 0 + +; Whether to use cookies. +; http://php.net/session.use-cookies +;session.use_cookies = 1 + +; http://php.net/session.cookie-secure +;session.cookie_secure = + +; This option forces PHP to fetch and use a cookie for storing and maintaining +; the session id. We encourage this operation as it's very helpful in combating +; session hijacking when not specifying and managing your own session id. It is +; not the be-all and end-all of session hijacking defense, but it's a good start. +; http://php.net/session.use-only-cookies +;session.use_only_cookies = 1 + +; Name of the session (used as cookie name). +; http://php.net/session.name +;session.name = PHPSESSID + +; Initialize session on request startup. +; http://php.net/session.auto-start +;session.auto_start = 0 + +; Lifetime in seconds of cookie or, if 0, until browser is restarted. +; http://php.net/session.cookie-lifetime +;session.cookie_lifetime = 0 + +; The path for which the cookie is valid. +; http://php.net/session.cookie-path +;session.cookie_path = / + +; The domain for which the cookie is valid. +; http://php.net/session.cookie-domain +;session.cookie_domain = + +; Whether or not to add the httpOnly flag to the cookie, which makes it +; inaccessible to browser scripting languages such as JavaScript. +; http://php.net/session.cookie-httponly +;session.cookie_httponly = + +; Add SameSite attribute to cookie to help mitigate Cross-Site Request Forgery (CSRF/XSRF) +; Current valid values are "Strict", "Lax" or "None". When using "None", +; make sure to include the quotes, as `none` is interpreted like `false` in ini files. +; https://tools.ietf.org/html/draft-west-first-party-cookies-07 +;session.cookie_samesite = + +; Handler used to serialize data. php is the standard serializer of PHP. +; http://php.net/session.serialize-handler +;session.serialize_handler = php + +; Defines the probability that the 'garbage collection' process is started on every +; session initialization. The probability is calculated by using gc_probability/gc_divisor, +; e.g. 1/100 means there is a 1% chance that the GC process starts on each request. +; Default Value: 1 +; Development Value: 1 +; Production Value: 1 +; http://php.net/session.gc-probability +;session.gc_probability = 1 + +; Defines the probability that the 'garbage collection' process is started on every +; session initialization. The probability is calculated by using gc_probability/gc_divisor, +; e.g. 1/100 means there is a 1% chance that the GC process starts on each request. +; For high volume production servers, using a value of 1000 is a more efficient approach. +; Default Value: 100 +; Development Value: 1000 +; Production Value: 1000 +; http://php.net/session.gc-divisor +;session.gc_divisor = 1000 + +; After this number of seconds, stored data will be seen as 'garbage' and +; cleaned up by the garbage collection process. +; http://php.net/session.gc-maxlifetime +;session.gc_maxlifetime = 1440 + +; NOTE: If you are using the subdirectory option for storing session files +; (see session.save_path above), then garbage collection does *not* +; happen automatically. You will need to do your own garbage +; collection through a shell script, cron entry, or some other method. +; For example, the following script is the equivalent of setting +; session.gc_maxlifetime to 1440 (1440 seconds = 24 minutes): +; find /path/to/sessions -cmin +24 -type f | xargs rm + +; Check HTTP Referer to invalidate externally stored URLs containing ids. +; HTTP_REFERER has to contain this substring for the session to be +; considered as valid. +; http://php.net/session.referer-check +;session.referer_check = + +; Set to {nocache,private,public,} to determine HTTP caching aspects +; or leave this empty to avoid sending anti-caching headers. +; http://php.net/session.cache-limiter +;session.cache_limiter = nocache + +; Document expires after n minutes. +; http://php.net/session.cache-expire +;session.cache_expire = 180 + +; trans sid support is disabled by default. +; Use of trans sid may risk your users' security. +; Use this option with caution. +; - User may send URL contains active session ID +; to other person via. email/irc/etc. +; - URL that contains active session ID may be stored +; in publicly accessible computer. +; - User may access your site with the same session ID +; always using URL stored in browser's history or bookmarks. +; http://php.net/session.use-trans-sid +;session.use_trans_sid = 0 + +; Set session ID character length. This value could be between 22 to 256. +; Shorter length than default is supported only for compatibility reason. +; Users should use 32 or more chars. +; http://php.net/session.sid-length +; Default Value: 32 +; Development Value: 26 +; Production Value: 26 +;session.sid_length = 26 + +; The URL rewriter will look for URLs in a defined set of HTML tags. +;
is special; if you include them here, the rewriter will +; add a hidden field with the info which is otherwise appended +; to URLs. tag's action attribute URL will not be modified +; unless it is specified. +; Note that all valid entries require a "=", even if no value follows. +; Default Value: "a=href,area=href,frame=src,form=" +; Development Value: "a=href,area=href,frame=src,form=" +; Production Value: "a=href,area=href,frame=src,form=" +; http://php.net/url-rewriter.tags +;session.trans_sid_tags = "a=href,area=href,frame=src,form=" + +; URL rewriter does not rewrite absolute URLs by default. +; To enable rewrites for absolute paths, target hosts must be specified +; at RUNTIME. i.e. use ini_set() +; tags is special. PHP will check action attribute's URL regardless +; of session.trans_sid_tags setting. +; If no host is defined, HTTP_HOST will be used for allowed host. +; Example value: php.net,www.php.net,wiki.php.net +; Use "," for multiple hosts. No spaces are allowed. +; Default Value: "" +; Development Value: "" +; Production Value: "" +;session.trans_sid_hosts="" + +; Define how many bits are stored in each character when converting +; the binary hash data to something readable. +; Possible values: +; 4 (4 bits: 0-9, a-f) +; 5 (5 bits: 0-9, a-v) +; 6 (6 bits: 0-9, a-z, A-Z, "-", ",") +; Default Value: 4 +; Development Value: 5 +; Production Value: 5 +; http://php.net/session.hash-bits-per-character +;session.sid_bits_per_character = 5 + +; Enable upload progress tracking in $_SESSION +; Default Value: On +; Development Value: On +; Production Value: On +; http://php.net/session.upload-progress.enabled +;session.upload_progress.enabled = On + +; Cleanup the progress information as soon as all POST data has been read +; (i.e. upload completed). +; Default Value: On +; Development Value: On +; Production Value: On +; http://php.net/session.upload-progress.cleanup +;session.upload_progress.cleanup = On + +; A prefix used for the upload progress key in $_SESSION +; Default Value: "upload_progress_" +; Development Value: "upload_progress_" +; Production Value: "upload_progress_" +; http://php.net/session.upload-progress.prefix +;session.upload_progress.prefix = "upload_progress_" + +; The index name (concatenated with the prefix) in $_SESSION +; containing the upload progress information +; Default Value: "PHP_SESSION_UPLOAD_PROGRESS" +; Development Value: "PHP_SESSION_UPLOAD_PROGRESS" +; Production Value: "PHP_SESSION_UPLOAD_PROGRESS" +; http://php.net/session.upload-progress.name +;session.upload_progress.name = "PHP_SESSION_UPLOAD_PROGRESS" + +; How frequently the upload progress should be updated. +; Given either in percentages (per-file), or in bytes +; Default Value: "1%" +; Development Value: "1%" +; Production Value: "1%" +; http://php.net/session.upload-progress.freq +;session.upload_progress.freq = "1%" + +; The minimum delay between updates, in seconds +; Default Value: 1 +; Development Value: 1 +; Production Value: 1 +; http://php.net/session.upload-progress.min-freq +;session.upload_progress.min_freq = "1" + +; Only write session data when session data is changed. Enabled by default. +; http://php.net/session.lazy-write +;session.lazy_write = On + +;[Assertion] +; Switch whether to compile assertions at all (to have no overhead at run-time) +; -1: Do not compile at all +; 0: Jump over assertion at run-time +; 1: Execute assertions +; Changing from or to a negative value is only possible in php.ini! (For turning assertions on and off at run-time, see assert.active, when zend.assertions = 1) +; Default Value: 1 +; Development Value: 1 +; Production Value: -1 +; http://php.net/zend.assertions +;zend.assertions = 1 + +; Assert(expr); active by default. +; http://php.net/assert.active +;assert.active = On + +; Throw an AssertionError on failed assertions +; http://php.net/assert.exception +;assert.exception = On + +; Issue a PHP warning for each failed assertion. (Overridden by assert.exception if active) +; http://php.net/assert.warning +;assert.warning = On + +; Don't bail out by default. +; http://php.net/assert.bail +;assert.bail = Off + +; User-function to be called if an assertion fails. +; http://php.net/assert.callback +;assert.callback = 0 + +;[COM] +; path to a file containing GUIDs, IIDs or filenames of files with TypeLibs +; http://php.net/com.typelib-file +;com.typelib_file = + +; allow Distributed-COM calls +; http://php.net/com.allow-dcom +;com.allow_dcom = true + +; autoregister constants of a component's typlib on com_load() +; http://php.net/com.autoregister-typelib +;com.autoregister_typelib = true + +; register constants casesensitive +; http://php.net/com.autoregister-casesensitive +;com.autoregister_casesensitive = false + +; show warnings on duplicate constant registrations +; http://php.net/com.autoregister-verbose +;com.autoregister_verbose = true + +; The default character set code-page to use when passing strings to and from COM objects. +; Default: system ANSI code page +;com.code_page= + +; The version of the .NET framework to use. The value of the setting are the first three parts +; of the framework's version number, separated by dots, and prefixed with "v", e.g. "v4.0.30319". +;com.dotnet_version= + +;[mbstring] +; language for internal character representation. +; This affects mb_send_mail() and mbstring.detect_order. +; http://php.net/mbstring.language +;mbstring.language = Japanese + +; Use of this INI entry is deprecated, use global internal_encoding instead. +; internal/script encoding. +; Some encoding cannot work as internal encoding. (e.g. SJIS, BIG5, ISO-2022-*) +; If empty, default_charset or internal_encoding or iconv.internal_encoding is used. +; The precedence is: default_charset < internal_encoding < iconv.internal_encoding +;mbstring.internal_encoding = + +; Use of this INI entry is deprecated, use global input_encoding instead. +; http input encoding. +; mbstring.encoding_translation = On is needed to use this setting. +; If empty, default_charset or input_encoding or mbstring.input is used. +; The precedence is: default_charset < input_encoding < mbstring.http_input +; http://php.net/mbstring.http-input +;mbstring.http_input = + +; Use of this INI entry is deprecated, use global output_encoding instead. +; http output encoding. +; mb_output_handler must be registered as output buffer to function. +; If empty, default_charset or output_encoding or mbstring.http_output is used. +; The precedence is: default_charset < output_encoding < mbstring.http_output +; To use an output encoding conversion, mbstring's output handler must be set +; otherwise output encoding conversion cannot be performed. +; http://php.net/mbstring.http-output +;mbstring.http_output = + +; enable automatic encoding translation according to +; mbstring.internal_encoding setting. Input chars are +; converted to internal encoding by setting this to On. +; Note: Do _not_ use automatic encoding translation for +; portable libs/applications. +; http://php.net/mbstring.encoding-translation +;mbstring.encoding_translation = Off + +; automatic encoding detection order. +; "auto" detect order is changed according to mbstring.language +; http://php.net/mbstring.detect-order +;mbstring.detect_order = auto + +; substitute_character used when character cannot be converted +; one from another +; http://php.net/mbstring.substitute-character +;mbstring.substitute_character = none + +; Enable strict encoding detection. +;mbstring.strict_detection = Off + +; This directive specifies the regex pattern of content types for which mb_output_handler() +; is activated. +; Default: mbstring.http_output_conv_mimetype=^(text/|application/xhtml\+xml) +;mbstring.http_output_conv_mimetype= + +; This directive specifies maximum stack depth for mbstring regular expressions. It is similar +; to the pcre.recursion_limit for PCRE. +;mbstring.regex_stack_limit=100000 + +; This directive specifies maximum retry count for mbstring regular expressions. It is similar +; to the pcre.backtrack_limit for PCRE. +;mbstring.regex_retry_limit=1000000 + +;[gd] +; Tell the jpeg decode to ignore warnings and try to create +; a gd image. The warning will then be displayed as notices +; disabled by default +; http://php.net/gd.jpeg-ignore-warning +;gd.jpeg_ignore_warning = 1 + +;[exif] +; Exif UNICODE user comments are handled as UCS-2BE/UCS-2LE and JIS as JIS. +; With mbstring support this will automatically be converted into the encoding +; given by corresponding encode setting. When empty mbstring.internal_encoding +; is used. For the decode settings you can distinguish between motorola and +; intel byte order. A decode setting cannot be empty. +; http://php.net/exif.encode-unicode +;exif.encode_unicode = ISO-8859-15 + +; http://php.net/exif.decode-unicode-motorola +;exif.decode_unicode_motorola = UCS-2BE + +; http://php.net/exif.decode-unicode-intel +;exif.decode_unicode_intel = UCS-2LE + +; http://php.net/exif.encode-jis +;exif.encode_jis = + +; http://php.net/exif.decode-jis-motorola +;exif.decode_jis_motorola = JIS + +; http://php.net/exif.decode-jis-intel +;exif.decode_jis_intel = JIS + +;[Tidy] +; The path to a default tidy configuration file to use when using tidy +; http://php.net/tidy.default-config +;tidy.default_config = /usr/local/lib/php/default.tcfg + +; Should tidy clean and repair output automatically? +; WARNING: Do not use this option if you are generating non-html content +; such as dynamic images +; http://php.net/tidy.clean-output +;tidy.clean_output = Off + +;[soap] +; Enables or disables WSDL caching feature. +; http://php.net/soap.wsdl-cache-enabled +;soap.wsdl_cache_enabled=1 + +; Sets the directory name where SOAP extension will put cache files. +; http://php.net/soap.wsdl-cache-dir +;soap.wsdl_cache_dir="/tmp" + +; (time to live) Sets the number of second while cached file will be used +; instead of original one. +; http://php.net/soap.wsdl-cache-ttl +;soap.wsdl_cache_ttl=86400 + +; Sets the size of the cache limit. (Max. number of WSDL files to cache) +soap.wsdl_cache_limit = 5 + +;[sysvshm] +; A default size of the shared memory segment +;sysvshm.init_mem = 10000 + +;[ldap] +; Sets the maximum number of open links or -1 for unlimited. +;ldap.max_links = -1 + +;[dba] +;dba.default_handler= + +;[opcache] +; Determines if Zend OPCache is enabled +;opcache.enable=1 + +; Determines if Zend OPCache is enabled for the CLI version of PHP +;opcache.enable_cli=0 + +; The OPcache shared memory storage size. +;opcache.memory_consumption=128 + +; The amount of memory for interned strings in Mbytes. +;opcache.interned_strings_buffer=8 + +; The maximum number of keys (scripts) in the OPcache hash table. +; Only numbers between 200 and 1000000 are allowed. +;opcache.max_accelerated_files=10000 + +; The maximum percentage of "wasted" memory until a restart is scheduled. +;opcache.max_wasted_percentage=5 + +; When this directive is enabled, the OPcache appends the current working +; directory to the script key, thus eliminating possible collisions between +; files with the same name (basename). Disabling the directive improves +; performance, but may break existing applications. +;opcache.use_cwd=1 + +; When disabled, you must reset the OPcache manually or restart the +; webserver for changes to the filesystem to take effect. +;opcache.validate_timestamps=1 + +; How often (in seconds) to check file timestamps for changes to the shared +; memory storage allocation. ("1" means validate once per second, but only +; once per request. "0" means always validate) +;opcache.revalidate_freq=2 + +; Enables or disables file search in include_path optimization +;opcache.revalidate_path=0 + +; If disabled, all PHPDoc comments are dropped from the code to reduce the +; size of the optimized code. +;opcache.save_comments=1 + +; If enabled, compilation warnings (including notices and deprecations) will +; be recorded and replayed each time a file is included. Otherwise, compilation +; warnings will only be emitted when the file is first cached. +;opcache.record_warnings=0 + +; Allow file existence override (file_exists, etc.) performance feature. +;opcache.enable_file_override=0 + +; A bitmask, where each bit enables or disables the appropriate OPcache +; passes +;opcache.optimization_level=0x7FFFBFFF + +;opcache.dups_fix=0 + +; The location of the OPcache blacklist file (wildcards allowed). +; Each OPcache blacklist file is a text file that holds the names of files +; that should not be accelerated. The file format is to add each filename +; to a new line. The filename may be a full path or just a file prefix +; (i.e., /var/www/x blacklists all the files and directories in /var/www +; that start with 'x'). Line starting with a ; are ignored (comments). +;opcache.blacklist_filename= + +; Allows exclusion of large files from being cached. By default all files +; are cached. +;opcache.max_file_size=0 + +; Check the cache checksum each N requests. +; The default value of "0" means that the checks are disabled. +;opcache.consistency_checks=0 + +; How long to wait (in seconds) for a scheduled restart to begin if the cache +; is not being accessed. +;opcache.force_restart_timeout=180 + +; OPcache error_log file name. Empty string assumes "stderr". +;opcache.error_log= + +; All OPcache errors go to the Web server log. +; By default, only fatal errors (level 0) or errors (level 1) are logged. +; You can also enable warnings (level 2), info messages (level 3) or +; debug messages (level 4). +;opcache.log_verbosity_level=1 + +; Preferred Shared Memory back-end. Leave empty and let the system decide. +;opcache.preferred_memory_model= + +; Protect the shared memory from unexpected writing during script execution. +; Useful for internal debugging only. +;opcache.protect_memory=0 + +; Allows calling OPcache API functions only from PHP scripts which path is +; started from specified string. The default "" means no restriction +;opcache.restrict_api= + +; Mapping base of shared memory segments (for Windows only). All the PHP +; processes have to map shared memory into the same address space. This +; directive allows to manually fix the "Unable to reattach to base address" +; errors. +;opcache.mmap_base= + +; Facilitates multiple OPcache instances per user (for Windows only). All PHP +; processes with the same cache ID and user share an OPcache instance. +;opcache.cache_id= + +; Enables and sets the second level cache directory. +; It should improve performance when SHM memory is full, at server restart or +; SHM reset. The default "" disables file based caching. +;opcache.file_cache= + +; Enables or disables opcode caching in shared memory. +;opcache.file_cache_only=0 + +; Enables or disables checksum validation when script loaded from file cache. +;opcache.file_cache_consistency_checks=1 + +; Implies opcache.file_cache_only=1 for a certain process that failed to +; reattach to the shared memory (for Windows only). Explicitly enabled file +; cache is required. +;opcache.file_cache_fallback=1 + +; Enables or disables copying of PHP code (text segment) into HUGE PAGES. +; This should improve performance, but requires appropriate OS configuration. +;opcache.huge_code_pages=0 + +; Validate cached file permissions. +;opcache.validate_permission=0 + +; Prevent name collisions in chroot'ed environment. +;opcache.validate_root=0 + +; If specified, it produces opcode dumps for debugging different stages of +; optimizations. +;opcache.opt_debug_level=0 + +; Specifies a PHP script that is going to be compiled and executed at server +; start-up. +; http://php.net/opcache.preload +;opcache.preload= + +; Preloading code as root is not allowed for security reasons. This directive +; facilitates to let the preloading to be run as another user. +; http://php.net/opcache.preload_user +;opcache.preload_user= + +; Prevents caching files that are less than this number of seconds old. It +; protects from caching of incompletely updated files. In case all file updates +; on your site are atomic, you may increase performance by setting it to "0". +;opcache.file_update_protection=2 + +; Absolute path used to store shared lockfiles (for *nix only). +;opcache.lockfile_path=/tmp + +;[curl] +; A default value for the CURLOPT_CAINFO option. This is required to be an +; absolute path. +;curl.cainfo = + +;[openssl] +; The location of a Certificate Authority (CA) file on the local filesystem +; to use when verifying the identity of SSL/TLS peers. Most users should +; not specify a value for this directive as PHP will attempt to use the +; OS-managed cert stores in its absence. If specified, this value may still +; be overridden on a per-stream basis via the "cafile" SSL stream context +; option. +;openssl.cafile= + +; If openssl.cafile is not specified or if the CA file is not found, the +; directory pointed to by openssl.capath is searched for a suitable +; certificate. This value must be a correctly hashed certificate directory. +; Most users should not specify a value for this directive as PHP will +; attempt to use the OS-managed cert stores in its absence. If specified, +; this value may still be overridden on a per-stream basis via the "capath" +; SSL stream context option. +;openssl.capath= + +;[ffi] +; FFI API restriction. Possible values: +; "preload" - enabled in CLI scripts and preloaded files (default) +; "false" - always disabled +; "true" - always enabled +;ffi.enable=preload + +; List of headers files to preload, wildcard patterns allowed. +;ffi.preload= diff --git a/php.prod.ini b/php.prod.ini new file mode 100644 index 0000000000000000000000000000000000000000..52033edf4621f42506682047f7eb7ce986563573 GIT binary patch literal 148950 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