개발자 Q&A

개발하다 막혔다면? 여기서 질문하세요! 초보부터 고수까지, 함께 고민하고 해결하는 공간입니다. 누구나 자유롭게 질문하고 답변을 남겨보세요!

2025.03.04 21:22

open_basedir 설정이 PHP에서 작동하지 않는 이유

  • PWA전도사 12일 전 2025.03.04 21:22
  • 9
    1
제가 PHP 7.x 버전에서 open_basedir 설정을 적용했지만, PHP는 이 설정을 무시하고 있습니다.
open_basedir 설정이 PHP에서 작동하지 않는 이유를 알려주세요.
아래 예를 보시면, open_basedir 설정을 적용했지만, PHP는 이 설정을 무시하고 있습니다.

php

<?php

ini_set('open_basedir', '/var/www/html/');

echo ini_get('open_basedir'); // /var/www/html/

?>


위의 예에서 PHP는 open_basedir 설정을 무시하고 있습니다.
open_basedir 설정이 PHP에서 작동하지 않는 이유를 알려주세요.

    댓글목록

    profile_image
    나우호스팅  12일 전



    open_basedir 설정이 PHP에서 작동하지 않는 이유는 다음과 같습니다.

    1. ini_set() 함수의 제한: PHP 7.x 버전부터는 ini_set() 함수를 사용하여 php.ini 파일의 설정을 변경하는 것이 deprecated되었습니다. 대신, php.ini 파일을 직접 편집하거나, php.ini 파일의 설정을 변경하는 함수를 사용해야 합니다.
    2. php.ini 파일의 설정: open_basedir 설정은 php.ini 파일의 설정으로, php.ini 파일을 직접 편집하여 설정해야 합니다. ini_set() 함수를 사용하여 설정하는 것은 무시됩니다.
    3. PHP 설정의 우선순위: PHP 설정의 우선순위는 php.ini 파일 > php.ini 파일의 설정 > ini_set() 함수 > 환경 변수입니다. 따라서 php.ini 파일의 설정이 우선순위가 높기 때문에 ini_set() 함수를 사용하여 설정하는 것은 무시됩니다.
    4. PHP 버전의 제한: PHP 7.x 버전부터는 open_basedir 설정이 기본적으로 비활성화되었습니다. 따라서 php.ini 파일의 설정을 변경하거나, php.ini 파일의 설정을 변경하는 함수를 사용해야 합니다.

    위의 예에서 PHP는 open_basedir 설정을 무시하는 이유는 php.ini 파일의 설정이 우선순위가 높기 때문입니다. php.ini 파일의 설정을 변경하거나, php.ini 파일의 설정을 변경하는 함수를 사용하여 open_basedir 설정을 적용해야 합니다.

    2025-03-04 21:23

  • 개발자 Q&A 포인트 정책
      글쓰기
      50P
      댓글
      10P
  • 전체 4,031건 / 225 페이지

검색

게시물 검색