구성 설정을 변경하는 방법
PHP를 Apache 모듈로 실행하기
PHP를 Apache 모듈로 사용할 때 Apache 구성 파일(예: httpd.conf) 및 .htaccess 파일의 지시문을 사용하여 구성 설정을 변경할 수도 있습니다. 그렇게 하려면 "AllowOverride Options" 또는 "AllowOverride All" 권한이 필요합니다.
Apache 구성 파일 내에서 PHP 구성을 변경할 수 있는 여러 Apache 지시문이 있습니다. 어떤 지시문이 PHP_INI_ALL
, PHP_INI_PERDIR
또는 PHP_INI_SYSTEM
인지 목록을 보려면 php.ini 지시문 목록 부록을 보십시오.
php_value name value
- 지정된 지시문의 값을 설정합니다.
PHP_INI_ALL
및PHP_INI_PERDIR
유형 지시문에만 사용할 수 있습니다. 이전에 설정한 값을 지우려면 값으로none
을 사용합니다.참고: 부울 값을 설정하기 위해
php_value
를 사용하지 마십시오. 대신php_flag
(아래 참조)를 사용해야 합니다. php_flag name on|off
- 부울 구성 지시문을 설정하는 데 사용됩니다.
PHP_INI_ALL
및PHP_INI_PERDIR
유형 지시문에만 사용할 수 있습니다. php_admin_value name value
- 지정된 지시문의 값을 설정합니다. .htaccess 파일에서는 사용할 수 없습니다.
php_admin_value
로 설정된 모든 지시문 유형은 .htaccess 또는 ini_set()에 의해 재정의될 수 없습니다. 이전에 설정한 값을 지우려면 값으로none
을 사용합니다. php_admin_flag name on|off
- 부울 구성 지시문을 설정하는 데 사용됩니다. .htaccess 파일에서는 사용할 수 없습니다.
php_admin_flag
로 설정된 모든 지시문 유형은 .htaccess 또는 ini_set()에 의해 재정의될 수 없습니다.
예 #1 Apache 구성 예
<IfModule mod_php5.c> php_value include_path ".:/usr/local/lib/php" php_admin_flag engine on </IfModule> <IfModule mod_php4.c> php_value include_path ".:/usr/local/lib/php" php_admin_flag engine on </IfModule>
주의 PHP 상수는 PHP 외부에 존재하지 않습니다. 예를 들어 httpd.conf에서 E_ALL
또는 E_NOTICE
와 같은 PHP 상수를 사용하여 error_reporting 지시문을 설정할 수 없습니다. 의미가 없고 0으로 평가되기 때문입니다. 대신 관련 비트마스크 값을 사용하십시오. 이 상수는 php.ini에서 사용할 수 있습니다.
Windows 레지스트리를 통해 PHP 구성 변경
Windows에서 PHP를 실행할 때 Windows 레지스트리를 사용하여 디렉토리별로 구성 값을 수정할 수 있습니다. 구성 값은 경로 이름에 해당하는 하위 키의 HKLM\SOFTWARE\PHP\Per Directory Values
레지스트리 키에 저장됩니다. 예를 들어, c:\inetpub\wwwroot
디렉토리의 구성 값은 HKLM\SOFTWARE\PHP\Per Directory Values\c\inetpub\wwwroot
키에 저장됩니다. 디렉토리에 대한 설정은 이 디렉토리 또는 그 하위 디렉토리에서 실행되는 모든 스크립트에 대해 활성화됩니다. 키 아래의 값에는 PHP 구성 지시문 이름과 문자열 값이 있어야 합니다. 값의 PHP 상수는 구문 분석되지 않습니다. 그러나 PHP_INI_USER
에서 변경할 수 있는 구성 값만 이 방법으로 설정할 수 있으며 PHP_INI_PERDIR
값은 이러한 구성 값을 각 요청에 대해 다시 읽기 때문에 설정할 수 없습니다.
PHP에 대한 기타 인터페이스
PHP를 실행하는 방법에 관계없이 ini_set()을 통해 스크립트 실행 시간에 특정 값을 변경할 수 있습니다. 자세한 내용은 ini_set() 페이지의 설명서를 참조하십시오.
현재 값과 함께 시스템의 구성 설정 전체 목록에 관심이 있는 경우 phpinfo() 함수를 실행하고 결과 페이지를 검토할 수 있습니다. ini_get() 또는 get_cfg_var()를 사용하여 런타임에 개별 구성 지시문의 값에 액세스할 수도 있습니다.