핵심 php.ini 지시문에 대한 설명

이 목록에는 PHP 설정을 구성하기 위해 설정할 수 있는 핵심 php.ini 지시문이 포함되어 있습니다. 확장이 처리하는 지시문은 각각 확장 문서 페이지에 나열되고 자세히 설명되어 있습니다. 예를 들어 세션 지시문에 대한 정보는 세션 페이지에서 찾을 수 있습니다.

메모: 여기에 나열된 기본값은 php.ini가 로드되지 않을 때 사용됩니다. 프로덕션 및 개발 php.ini의 값은 다를 수 있습니다.


언어 옵션

언어 및 기타 구성 옵션

Name Default Changeable Changelog
short_open_tag "1" PHP_INI_PERDIR  
precision "14" PHP_INI_ALL  
serialize_precision "-1" PHP_INI_ALL Prior to PHP 7.1.0, the default value was 17.
disable_functions "" PHP_INI_SYSTEM only  
disable_classes "" php.ini only  
exit_on_timeout "" PHP_INI_ALL  
expose_php "1" php.ini only  
hard_timeout "2" PHP_INI_SYSTEM Available as of PHP 7.1.0.
zend.exception_ignore_args "0" PHP_INI_ALL Available as of PHP 7.4.0
zend.multibyte "0" PHP_INI_ALL  
zend.script_encoding NULL PHP_INI_ALL  
zend.detect_unicode NULL PHP_INI_ALL  
zend.signal_check "0" PHP_INI_SYSTEM  
zend.assertions "1" PHP_INI_ALL with restrictions  

다음은 구성 지시문에 대한 간단한 설명입니다.

short_open_tag bool
PHP의 열린 태그의 짧은 형식(<? ?>)을 허용해야 하는지 여부를 PHP에 알려줍니다. PHP를 XML과 함께 사용하려면 <?xml ?> 인라인을 사용하기 위해 이 옵션을 비활성화할 수 있습니다. 그렇지 않으면 다음과 같이 PHP로 인쇄할 수 있습니다. <?php echo '<?xml version="1.0"?>'; ?>. 또한 비활성화된 경우 긴 형식의 PHP 열기 태그(<<?php ?>)를 사용해야 합니다.

메모: 이 지시문은 항상 사용할 수 있는 약어 <?=에 영향을 주지 않습니다.

precision int
부동 소수점 숫자로 표시되는 유효 자릿수입니다. -1은 이러한 숫자를 반올림하기 위한 향상된 알고리즘이 사용됨을 의미합니다.
serialize_precision int
부동 소수점 숫자를 직렬화하는 동안 저장된 유효 자릿수입니다. -1은 이러한 숫자를 반올림하기 위한 향상된 알고리즘이 사용됨을 의미합니다.
expose_php bool
HTTP 헤더에 PHP 버전이 포함된 서버에 PHP가 설치되어 있다는 사실을 세상에 공개합니다(예: X-Powered-By: PHP/5.3.7).
disable_functions string
이 지시문을 사용하면 특정 기능을 비활성화할 수 있습니다. 쉼표로 구분된 함수 이름 목록을 사용합니다.

이 지시문을 사용하여 내부 함수만 비활성화할 수 있습니다. 사용자 정의 함수는 영향을 받지 않습니다.

이 지시문은 php.ini에서 설정해야 합니다. 예를 들어 httpd.conf에서는 설정할 수 없습니다.

disable_classes string
이 지시문을 사용하면 특정 클래스를 비활성화할 수 있습니다. 쉼표로 구분된 클래스 이름 목록을 사용합니다. 이 지시문은 php.ini에서 설정해야 합니다. 예를 들어 httpd.conf에서는 설정할 수 없습니다.
zend.assertions int
1로 설정하면 어설션 코드가 생성되고 실행됩니다(개발 모드). 0으로 설정하면 어설션 코드가 생성되지만 런타임에 건너뜁니다(실행되지 않음). -1로 설정하면 어설션 코드가 생성되지 않으므로 어설션이 비용이 들지 않습니다(프로덕션 모드).

메모: 프로세스가 프로덕션 모드에서 시작되면 주장을 위한 코드가 생성되지 않았기 때문에 런타임에 zend.assertions를 변경할 수 없습니다.
프로세스가 개발 모드에서 시작되면 런타임에 zend.assertions를 -1로 설정할 수 없습니다.

hard_timeout int
max_execution_time에 설정된 시간 초과에 도달하면 PHP 런타임이 리소스를 정상적으로 해제합니다. 이 일이 발생하는 동안 문제가 발생하면 하드 타임아웃이 설정된 시간(초) 동안 똑딱 거리게 됩니다. 하드 타임아웃에 도달하면 PHP가 비정상적으로 종료됩니다. 0으로 설정하면 하드 타임아웃이 활성화되지 않습니다.

PHP가 하드 타임아웃에서 중지하면 다음과 같이 표시됩니다.

Fatal error: Maximum execution time of 30+2 seconds exceeded (terminated) in Unknown on line 0
                    
zend.exception_ignore_args bool
예외에서 생성된 스택 추적에서 인수를 제외합니다.
zend.multibyte bool
멀티바이트 인코딩에서 소스 파일의 구문 분석을 활성화합니다. 멀티바이트 문자열 데이터에 특수 문자가 포함된 SJIS, BIG5 등과 같은 문자 인코딩을 사용하려면 zend.multibyte를 활성화해야 합니다. UTF-8, EUC 등과 같은 ISO-8859-1 호환 인코딩에는 이 옵션이 필요하지 않습니다.

zend.multibyte를 활성화하려면 mbstring 확장을 사용할 수 있어야 합니다.

zend.script_encoding string
이 값은 스크립트 상단에 선언(encoding=...) 지시문이 나타나지 않는 한 사용됩니다. ISO-8859-1 비호환 인코딩을 사용하는 경우 zend.multibyte와 zend.script_encoding을 모두 사용해야 합니다.

리터럴 문자열은 mb_convert_encoding()이 호출된 것처럼 zend.script_encoding에서 mbstring.internal_encoding으로 음역됩니다.

zend.detect_unicode bool
BOM(바이트 순서 표시)을 확인하고 파일에 유효한 멀티바이트 문자가 포함되어 있는지 확인합니다. 이 감지는 __halt_compiler() 처리 전에 수행됩니다. Zend 멀티바이트 모드에서만 사용할 수 있습니다.
zend.signal_check bool
종료 시 교체된 신호 처리기를 확인합니다.
exit_on_timeout bool
이것은 PHP 실행 시간 초과가 발생한 경우 Apache 자식을 강제 종료하는 Apache1 mod_php 전용 지시문입니다. 이러한 시간 초과로 인해 Apache1에서 내부 longjmp() 호출이 발생하여 일부 확장이 일관되지 않은 상태로 남을 수 있습니다. 프로세스를 종료하면 미해결 잠금이나 메모리가 정리됩니다.

Resource Limits

Resource Limits

Name Default Changeable Changelog
memory_limit "128M" PHP_INI_ALL

다음은 구성 지시문에 대한 간단한 설명입니다.

memory_limit int
이것은 스크립트가 할당할 수 있는 최대 메모리 양을 바이트 단위로 설정합니다. 이는 서버에서 사용 가능한 모든 메모리를 소모하기 위해 잘못 작성된 스크립트를 방지하는 데 도움이 됩니다. 메모리 제한이 없도록 하려면 이 지시문을 -1로 설정하십시오.

int를 사용하는 경우 값은 바이트 단위로 측정됩니다. 이 FAQ에 설명된 대로 약식 표기법을 사용할 수도 있습니다.

참조: max_execution_time.


Performance Tuning

Performance Tuning

Name Default Changeable Changelog
realpath_cache_size "4M" PHP_INI_SYSTEM Prior to PHP 7.0.16 and 7.1.2, the default was "16K"
realpath_cache_ttl "120" PHP_INI_SYSTEM

메모: open_basedir를 사용하면 실제 경로 캐시가 비활성화됩니다.

다음은 구성 지시문에 대한 간단한 설명입니다.

    realpath_cache_size int
    PHP에서 사용할 실제 경로 캐시의 크기를 결정합니다. PHP가 많은 파일을 여는 시스템에서는 수행된 파일 작업의 양을 반영하기 위해 이 값을 늘려야 합니다.

    크기는 저장된 경로 문자열의 총 바이트 수와 캐시 항목과 관련된 데이터 크기를 나타냅니다. 즉, 캐시에 더 긴 경로를 저장하려면 캐시 크기가 더 커야 합니다. 이 값은 캐시할 수 있는 고유한 경로의 수를 직접 제어하지 않습니다.

    캐시 항목 데이터에 필요한 크기는 시스템에 따라 다릅니다.

    realpath_cache_ttl int
    주어진 파일 또는 디렉토리에 대한 실제 경로 정보를 캐시하는 시간(초)입니다. 파일을 거의 변경하지 않는 시스템의 경우 값을 높이는 것을 고려하십시오.

Data Handling

Data Handling Configuration Options

Name Default Changeable Changelog
arg_separator.output "&" PHP_INI_ALL  
arg_separator.input "&" PHP_INI_PERDIR  
variables_order "EGPCS" PHP_INI_PERDIR  
request_order "" PHP_INI_PERDIR  
auto_globals_jit "1" PHP_INI_PERDIR  
register_argc_argv "1" PHP_INI_PERDIR  
enable_post_data_reading "1" PHP_INI_PERDIR  
post_max_size "8M" PHP_INI_PERDIR  
auto_prepend_file NULL PHP_INI_PERDIR  
auto_append_file NULL PHP_INI_PERDIR  
default_mimetype "text/html" PHP_INI_ALL  
default_charset "UTF-8" PHP_INI_ALL  
input_encoding "" PHP_INI_ALL  
output_encoding "" PHP_INI_ALL  
internal_encoding "" PHP_INI_ALL  

다음은 구성 지시문에 대한 간단한 설명입니다.

arg_separator.output string
PHP에서 사용되는 구분 기호는 인수를 구분하기 위해 생성된 URL입니다.
arg_separator.input string
PHP가 입력 URL을 변수로 구문 분석하는 데 사용하는 구분 기호 목록입니다.

메모: 이 지시문의 모든 문자는 구분 기호로 간주됩니다!

variables_order string
EGPCS(Environment, Get, Post, Cookie, Server) 변수 구문 분석의 순서를 설정합니다. 예를 들어, variables_order가 "SP"로 설정되면 PHP는 superglobals $_SERVER$_POST를 생성하지만 $_ENV, $_GET$_COOKIE는 생성하지 않습니다. ""로 설정하면 superglobals이 설정되지 않습니다.

경고 CGI 및 FastCGI SAPI 모두에서 $_SERVER도 환경의 값으로 채워집니다. S는 이 지시어의 다른 위치에 E를 배치하는 것과 상관없이 항상 ES와 동일합니다.

메모: $_REQUEST의 내용과 순서도 이 지시문에 영향을 받습니다.

request_order string
이 지시문은 PHP가 GET, POST 및 쿠키 변수를 _REQUEST 배열에 등록하는 순서를 설명합니다. 등록은 왼쪽에서 오른쪽으로 수행되며 새 값이 이전 값보다 우선합니다.

이 지시문이 설정되지 않으면 $_REQUEST 내용에 variables_order가 사용됩니다.

보안 문제로 인해 기본 배포 php.ini 파일에는 쿠키에 대한 'C'가 포함되어 있지 않습니다.

auto_globals_jit bool
활성화되면 SERVER, REQUEST 및 ENV 변수는 스크립트가 시작될 때가 아니라 처음 사용될 때(Just In Time) 생성됩니다. 이러한 변수가 스크립트 내에서 사용되지 않는 경우 이 지시문을 켜면 성능이 향상됩니다.

경고 SERVER, REQUEST 및 ENV 변수의 사용은 컴파일 시간 동안 확인되므로 예를 들어 다음을 통해 사용합니다. 가변 변수는 초기화를 일으키지 않습니다.

register_argc_argv bool
argv 및 argc 변수(GET 정보를 포함함)를 선언할지 여부를 PHP에 알려줍니다. 명령줄도 참조하십시오.
enable_post_data_reading bool
이 옵션을 비활성화하면 $_POST$_FILES가 채워지지 않습니다. postdata를 읽는 유일한 방법은 php://input 스트림 래퍼를 통하는 것입니다. 이것은 요청을 프록시하거나 메모리 효율적인 방식으로 POST 데이터를 처리하는 데 유용할 수 있습니다.
post_max_size int
허용되는 게시물 데이터의 최대 크기를 설정합니다. 이 설정은 파일 업로드에도 영향을 줍니다. 대용량 파일을 업로드하려면 이 값이 upload_max_filesize보다 커야 합니다. 일반적으로 memory_limit는 post_max_size보다 커야 합니다. int를 사용하는 경우 값은 바이트 단위로 측정됩니다. 이 FAQ에 설명된 대로 약식 표기법을 사용할 수도 있습니다. 게시물 데이터의 크기가 post_max_size보다 크면 $_POST$_FILES superglobals이 비어 있습니다. 이것은 다양한 방법으로 추적할 수 있습니다. $_GET 변수를 데이터를 처리하는 스크립트(예:
)에 전달한 다음 $_GET['processed']가 설정되었는지 확인합니다.

메모: PHP는 K(킬로), M(메가), G(기가)를 포함한 바이트 값에 대한 단축키를 허용합니다. 이 중 하나를 사용하면 PHP가 자동으로 변환을 수행합니다. 32비트 부호 있는 정수 제한(32비트 버전을 사용하는 경우)을 초과하지 않도록 주의하십시오. 스크립트가 실패할 수 있기 때문입니다.

Changelog for post_max_size

Version Description
5.3.4 post_max_size = 0 will not disable the limit when the content type is application/x-www-form-urlencoded or is not registered with PHP.
5.3.2 , 5.2.12 Allow unlimited post size by setting post_max_size to 0.
auto_prepend_file string
기본 파일보다 먼저 자동으로 구문 분석되는 파일의 이름을 지정합니다. 파일은 require 함수로 호출된 것처럼 포함되어 있으므로 include_path를 사용합니다.

특별한 값 none은 자동 추가를 비활성화합니다.

auto_append_file string
기본 파일 다음에 자동으로 구문 분석되는 파일의 이름을 지정합니다. 파일은 require 함수로 호출된 것처럼 포함되어 있으므로 include_path를 사용합니다.

특수 값 none은 자동 추가를 비활성화합니다.

참고: 스크립트가 exit()로 종료되면 자동 추가가 발생하지 않습니다.

default_mimetype string
기본적으로 PHP는 Content-Type 헤더를 사용하여 미디어 유형을 출력합니다. 이것을 비활성화하려면 단순히 비어 있도록 설정하십시오.

HP의 기본 제공 미디어 유형은 text/html로 설정됩니다.

default_charset string
"UTF-8"이 기본값이며 인코딩 매개변수가 생략된 경우 해당 값이 htmlentities(), html_entity_decode()htmlspecialchars()에 대한 기본 문자 인코딩으로 사용됩니다. default_charset의 값은 iconv.input_encoding, iconv.output_encodingiconv.internal_encoding 구성 옵션이 설정되지 않은 경우 iconv 함수의 기본 문자 집합을 설정하고 mbstring.http_input mbstring.http_output mbstring.internal_encoding이 설정되지 않은 경우 mbstring 함수의 경우에도 사용됩니다. 구성 옵션이 설정되지 않았습니다.

헤더가 header() 호출에 의해 재정의되지 않는 경우 모든 PHP 버전은 이 값을 PHP에서 보낸 기본 Content-Type 헤더 내의 문자 집합으로 사용합니다.

default_charset을 빈 값으로 설정하는 것은 권장되지 않습니다.

input_encoding string
이 설정은 mbstring 및 iconv와 같은 멀티바이트 모듈에 사용됩니다. 기본값은 비어 있습니다.
output_encoding string
이 설정은 mbstring 및 iconv와 같은 멀티바이트 모듈에 사용됩니다. 기본값은 비어 있습니다.
internal_encoding string
이 설정은 mbstring 및 iconv와 같은 멀티바이트 모듈에 사용됩니다. 기본값은 비어 있습니다. 비어 있으면 default_charset이 사용됩니다.

Paths and Directories

Paths and Directories Configuration Options

Name Default Changeable Changelog
include_path ".;/path/to/php/pear" PHP_INI_ALL  
open_basedir NULL PHP_INI_ALL  
doc_root NULL PHP_INI_SYSTEM  
user_dir NULL PHP_INI_SYSTEM  
user_ini.cache_ttl "300" PHP_INI_SYSTEM  
user_ini.filename ".user.ini" PHP_INI_SYSTEM  
extension_dir "/path/to/php" PHP_INI_SYSTEM  
extension NULL php.ini only  
zend_extension NULL php.ini only  
cgi.check_shebang_line "1" PHP_INI_SYSTEM  
cgi.discard_path "0" PHP_INI_SYSTEM  
cgi.fix_pathinfo "1" PHP_INI_SYSTEM  
cgi.force_redirect "1" PHP_INI_SYSTEM  
cgi.nph "0" PHP_INI_SYSTEM  
cgi.redirect_status_env NULL PHP_INI_SYSTEM  
cgi.rfc2616_headers "0" PHP_INI_ALL  
fastcgi.impersonate "0" PHP_INI_SYSTEM  
fastcgi.logging "1" PHP_INI_SYSTEM  

다음은 구성 지시문에 대한 간단한 설명입니다.

include_path string
require, include, fopen(), file(), readfile()file_get_contents() 함수가 파일을 찾는 디렉토리 목록을 지정합니다. 형식은 시스템의 PATH 환경 변수와 같습니다. Unix에서는 콜론으로, Windows에서는 세미콜론으로 구분된 디렉토리 목록입니다.

PHP는 포함할 파일을 찾을 때 포함 경로의 각 항목을 개별적으로 고려합니다. 첫 번째 경로를 확인하고 찾지 못하면 포함된 파일을 찾거나 E_WARNING 또는 E_ERROR와 함께 반환될 때까지 다음 경로를 확인합니다. set_include_path()를 사용하여 런타임에 포함 경로를 수정하거나 설정할 수 있습니다.

Example #1 Unix include_path

include_path=".:/php/includes"
                    

Example #2 Windows include_path

include_path=".;c:\php\includes"
                    

Using a . in the include path allows for relative includes as it means the current directory. However, it is more efficient to explicitly use include './file' than having PHP always check the current directory for every include.

메모: ENV 변수는 .ini 파일에서도 액세스할 수 있습니다. 따라서 ${LOGIN} 및 ${USER}를 사용하여 홈 디렉토리를 참조할 수 있습니다.
환경 변수는 환경이 다를 수 있으므로 서버 API 간에 다를 수 있습니다.

Example #3 Unix include_path using ${USER} env variable

include_path = ".:${USER}/pear/php"
                    
open_basedir string
PHP가 액세스할 수 있는 파일을 파일 자체를 포함하여 지정된 디렉토리 트리로 제한합니다. 이 지시문은 안전 모드가 켜져 있는지 여부에 영향을 받지 않습니다.

스크립트가 예를 들어 include 또는 fopen()을 사용하여 파일 시스템에 액세스하려고 하면 파일 위치가 확인됩니다. 파일이 지정된 디렉토리 트리 외부에 있으면 PHP는 액세스를 거부합니다. 모든 심볼릭 링크가 해결되므로 심볼릭 링크로 이 제한을 피할 수 없습니다. 파일이 존재하지 않으면 심볼릭 링크를 확인할 수 없으며 파일 이름이 (확인된) open_basedir과 비교됩니다.

open_basedir는 파일 시스템 기능 이상에 영향을 줄 수 있습니다. 예를 들어 MySQL이 mysqlnd 드라이버를 사용하도록 구성된 경우 LOAD DATA INFILE은 open_basedir의 영향을 받습니다. PHP의 확장된 기능의 대부분은 이러한 방식으로 open_basedir를 사용합니다.

특별한 가치 . 스크립트의 작업 디렉토리가 기본 디렉토리로 사용됨을 나타냅니다. 그러나 이것은 스크립트의 작업 디렉토리가 chdir()로 쉽게 변경될 수 있으므로 약간 위험합니다.

httpd.conf에서 open_basedir는 "php_admin_value open_basedir 없음"이 있는 다른 구성 지시문과 동일한 방식으로 (예: 일부 가상 호스트의 경우) 끌 수 있습니다.

Windows에서는 세미콜론으로 디렉터리를 구분합니다. 다른 모든 시스템에서는 콜론으로 디렉토리를 구분하십시오. Apache 모듈로서 이제 상위 디렉토리의 open_basedir 경로가 자동으로 상속됩니다.

open_basedir로 지정된 제한은 접두어가 아니라 디렉토리 이름입니다.

기본값은 모든 파일을 열 수 있도록 하는 것입니다.

메모: open_basedir는 런타임에 강화될 수 있습니다. 이는 php.ini에서 open_basedir가 /www/로 설정되어 있으면 스크립트가 ini_set()을 사용하여 런타임에 구성을 /www/tmp/로 강화할 수 있음을 의미합니다. 여러 디렉토리를 나열할 때 운영 체제에 관계없이 PATH_SEPARATOR 상수를 구분 기호로 사용할 수 있습니다.

메모: open_basedir를 사용하면 realpath_cache_size가 0으로 설정되어 실제 경로 캐시가 비활성화됩니다.

주의 open_basedir는 포괄적이지 않은 추가 안전망일 뿐이므로 보안이 필요할 때 신뢰할 수 없습니다.

doc_root string
서버에 있는 PHP의 "루트 디렉토리". 비어 있지 않은 경우에만 사용됩니다. PHP가 FORCE_REDIRECT로 컴파일되지 않은 경우(IIS 제외) 웹 서버에서 PHP를 CGI로 실행하는 경우 doc_root를 설정해야 합니다. 대안은 아래의 cgi.force_redirect 구성을 사용하는 것입니다.
user_ini.cache_ttl int
user_ini.filename string
user_dir string
PHP 파일에 대한 사용자의 홈 디렉토리에서 사용되는 디렉토리의 기본 이름(예: public_html ).
extension_dir string
PHP는 어떤 디렉토리에서 동적으로 로드 가능한 확장을 찾아야 합니다. 절대 경로를 지정하는 것이 좋습니다. enable_dldl()도 참조하십시오.
extension string
PHP가 시작될 때 로드할 동적으로 로드할 수 있는 확장입니다.
zend_extension string
PHP가 시작될 때 로드할 동적으로 로드 가능한 Zend 확장(예: XDebug)의 이름입니다.
cgi.check_shebang_line bool
CGI PHP가 #! (shebang) 실행 중인 스크립트의 맨 위에 있습니다. 스크립트가 독립 실행형 스크립트와 PHP CGI를 통한 실행을 모두 지원하는 경우 이 행이 필요할 수 있습니다. CGI 모드의 PHP는 이 지시문이 켜져 있으면 이 줄을 건너뛰고 내용을 무시합니다.
cgi.discard_path bool
이것이 활성화되면 PHP CGI 바이너리를 웹 트리 외부에 안전하게 배치할 수 있으며 사람들은 .htaccess 보안을 우회할 수 없습니다.
cgi.fix_pathinfo bool
CGI에 대한 실제 PATH_INFO/PATH_TRANSLATED 지원을 제공합니다. PHP의 이전 동작은 PATH_TRANSLATED를 SCRIPT_FILENAME으로 설정하고 PATH_INFO가 무엇인지 알 수 없는 것이었습니다. PATH_INFO에 대한 자세한 내용은 CGI 사양을 참조하세요. 이것을 1로 설정하면 PHP CGI가 사양을 준수하도록 경로를 수정합니다. 0으로 설정하면 PHP가 이전과 같이 작동합니다. 기본적으로 켜져 있습니다. PATH_TRANSLATED 대신 SCRIPT_FILENAME을 사용하도록 스크립트를 수정해야 합니다.
cgi.force_redirect bool
cgi.force_redirect는 대부분의 웹 서버에서 PHP를 CGI로 실행하는 보안을 제공하는 데 필요합니다. 정의되지 않은 상태로 두면 PHP는 기본적으로 이 기능을 켭니다. 자신의 책임하에 끌 수 있습니다.

메모: Windows 사용자: IIS를 사용하는 경우 이 옵션을 꺼야 합니다. OmniHTTPD 또는 Xitami의 경우에도 동일하게 적용됩니다.

cgi.nph bool
cgi.nph가 활성화되면 cgi가 모든 요청에 ​​항상 상태: 200을 보내도록 합니다.
cgi.redirect_status_env string
cgi.force_redirect가 켜져 있고 Apache 또는 Netscape(iPlanet) 웹 서버에서 실행 중이 아닌 경우 PHP가 계속 실행해도 괜찮은지 확인하기 위해 찾을 환경 변수 이름을 설정해야 할 수 있습니다.

메모: 이 변수를 설정하면 보안 문제가 발생할 수 있으므로 먼저 무엇을 하고 있는지 알아두십시오.

cgi.rfc2616_headers int
HTTP 응답 코드를 보낼 때 사용할 헤더 유형을 PHP에 알려줍니다. 0으로 설정하면 PHP는 Apache 및 기타 웹 서버에서 지원하는 » RFC 3875 '상태:' 헤더를 보냅니다. 이 옵션이 1로 설정되면 PHP는 » RFC 2616 호환 헤더를 보냅니다.

이 옵션이 활성화되어 있고 PHP를 CGI 환경(예: PHP-FPM)에서 실행 중인 경우 표준 RFC 2616 스타일 HTTP 상태 응답 헤더를 사용해서는 안 됩니다. 헤더 대신("HTTP/1.0 404 찾을 수 없음"); header("Status: 404 Not Found");

무엇을 하고 있는지 모르는 경우가 아니면 0으로 설정하십시오.

fastcgi.impersonate string
IIS(WINNT 기반 OS)의 FastCGI는 호출 클라이언트의 보안 토큰을 가장하는 기능을 지원합니다. 이를 통해 IIS는 요청이 실행되는 보안 컨텍스트를 정의할 수 있습니다. Apache의 mod_fastcgi는 현재 이 기능을 지원하지 않습니다(2002년 3월 17일) IIS에서 실행 중인 경우 1로 설정하십시오. 기본값은 0입니다.
fastcgi.logging bool
FastCGI를 사용할 때 SAPI 로깅을 켭니다. 기본값은 로깅을 활성화하는 것입니다.

파일 업로드

파일 업로드 구성 옵션

Name Default Changeable Changelog
file_uploads "1" PHP_INI_SYSTEM  
upload_tmp_dir NULL PHP_INI_SYSTEM  
max_input_nesting_level 64 PHP_INI_PERDIR  
max_input_vars 1000 PHP_INI_PERDIR  
upload_max_filesize "2M" PHP_INI_PERDIR  
max_file_uploads 20 PHP_INI_PERDIR  

다음은 구성 지시문에 대한 간단한 설명입니다.

file_uploads bool
HTTP 파일 업로드 허용 여부입니다. 또한 upload_max_filesize, upload_tmp_dirpost_max_size 지시문을 참조하십시오.
upload_tmp_dir string
파일 업로드 시 파일을 저장하는 데 사용되는 임시 디렉토리입니다. PHP가 실행 중인 모든 사용자가 쓸 수 있어야 합니다. 지정하지 않으면 PHP는 시스템의 기본값을 사용합니다.

여기에 지정된 디렉토리가 쓰기 불가능하면 PHP는 시스템 기본 임시 디렉토리로 대체합니다. open_basedir이 켜져 있는 경우 업로드가 성공하려면 시스템 기본 디렉토리가 허용되어야 합니다.

upload_max_filesize int
업로드된 파일의 최대 크기입니다.

post_max_size는 이 값보다 커야 합니다.

int를 사용하는 경우 값은 바이트 단위로 측정됩니다. 이 FAQ에 설명된 대로 약식 표기법을 사용할 수도 있습니다.

max_file_uploads int
동시에 업로드할 수 있는 최대 파일 수입니다. 제출 시 비어 있는 업로드 필드는 이 제한에 포함되지 않습니다.

General SQL

General SQL Configuration Options

Name Default Changeable Changelog
sql.safe_mode "0" PHP_INI_SYSTEM Removed as of PHP 7.2.0

다음은 구성 지시문에 대한 간단한 설명입니다.

sql.safe_mode bool
켜져 있는 경우 기본값을 지정하는 데이터베이스 연결 함수는 사용자 제공 인수 대신 해당 값을 사용합니다. 기본값에 대한 자세한 내용은 관련 연결 기능에 대한 설명서를 참조하십시오.

경고 이 기능은 PHP 7.2.0부터 제거되었습니다.


Windows Specific

Windows Specific Configuration Options

Name Default Changeable Changelog
windows.show_crt_warning "0" PHP_INI_ALL

다음은 구성 지시문에 대한 간단한 설명입니다.

windows.show_crt_warning bool
이 지시문은 활성화된 경우 Windows CRT 경고를 표시합니다.