복붙노트

open_basedir 제한이 적용됩니다. 파일 (/)이 (가) 허용 된 경로 내에 있지 않습니다.

PHP

open_basedir 제한이 적용됩니다. 파일 (/)이 (가) 허용 된 경로 내에 있지 않습니다.

내 사이트에서 아바타 업로드시이 오류가 표시됩니다. 나는 결코 전에 그것을 얻지 않으며 아무것도 나를이 오류를 받기 시작하기 위해 최근에 바꿨다 ...

Warning: is_writable() [function.is-writable]: 
open_basedir restriction in effect. 
File(/) is not within the allowed path(s):

해결법

  1. ==============================

    1.PHP 구성에서 open_basedir 설정을 수정하십시오 (런타임 구성 참조).

    PHP 구성에서 open_basedir 설정을 수정하십시오 (런타임 구성 참조).

    open_basedir 설정은 주로 특정 사용자의 PHP 스크립트가 다른 사용자의 계정에있는 파일에 액세스하지 못하게하는 데 사용됩니다. 따라서 대개 자신의 계정에있는 모든 파일은 자신의 스크립트로 읽을 수 있어야합니다.

    PHP가 Linux 시스템에서 Apache 모듈로 실행되는 경우 .htaccess를 통한 설정 예 :

    <DirectoryMatch "/home/sites/site81/">
        php_admin_value open_basedir "/home/sites/site81/:/tmp/:/"
    </DirectoryMatch>
    
  2. ==============================

    2.호스팅 계정에서 open_basedir 설정을 수정하고 none으로 설정하십시오. Plesk / cPanel의 'PHP 설정'영역에있는 open_basedir 설정을 찾으십시오. 거기에 주어진 드롭 다운에서 '없음'으로 설정하십시오. 나는 그들을 Plesk 패널 사진에 보여주었습니다.

    호스팅 계정에서 open_basedir 설정을 수정하고 none으로 설정하십시오. Plesk / cPanel의 'PHP 설정'영역에있는 open_basedir 설정을 찾으십시오. 거기에 주어진 드롭 다운에서 '없음'으로 설정하십시오. 나는 그들을 Plesk 패널 사진에 보여주었습니다.

  3. ==============================

    3.이 오류를 해결하려면 httpd.conf 파일을 편집해야합니다. apache2handler 섹션 지시어 인 Server Root의 phpinfo에서 볼 수 있습니다. 예를 들어, 필자의 경우에는 / etc / httpd / httpd.conf를 사용한다. httpd.conf 파일을 열고 open_basedir 매개 변수에 대한 설명을 찾습니다. 그리고 그것을 none으로 설정하십시오. (php_admin_value open_basedir 없음)

    이 오류를 해결하려면 httpd.conf 파일을 편집해야합니다. apache2handler 섹션 지시어 인 Server Root의 phpinfo에서 볼 수 있습니다. 예를 들어, 필자의 경우에는 / etc / httpd / httpd.conf를 사용한다. httpd.conf 파일을 열고 open_basedir 매개 변수에 대한 설명을 찾습니다. 그리고 그것을 none으로 설정하십시오. (php_admin_value open_basedir 없음)

  4. ==============================

    4.필자에게 문제는 Plesk 서버의 모든 구성 요소 값을 잃어 버렸거나 누락되었습니다. 나는 방금 여기 방향을 따랐다. http://davidseah.com/blog/2007/04/separate-php-error-logs-for-multiple-domains-with-plesk/

    필자에게 문제는 Plesk 서버의 모든 구성 요소 값을 잃어 버렸거나 누락되었습니다. 나는 방금 여기 방향을 따랐다. http://davidseah.com/blog/2007/04/separate-php-error-logs-for-multiple-domains-with-plesk/

    VirtualHost 정의마다 별도의 오류 로그 파일을 갖도록 PHP를 설정할 수 있습니다. 트릭은 Plesk를 깨지 않고 구성을 직접 만질 수 없으므로 설정 방법을 정확히 알고 있습니다. 귀하의 (dv)에있는 모든 도메인 이름은 / var / www / vhosts에 자체 디렉토리가 있습니다. 일반적인 디렉토리에는 다음과 같은 최상위 디렉토리가 있습니다.

    cgi-bin/
    conf/
    error_docs/
    httpdocs/
    httpsdocs/
    ...and so on
    

    다음 줄을 사용하여 도메인 디렉토리의 conf / 폴더에 vhost.conf 파일을 만들 수 있습니다.

    php_value error_log /path/to/error_log
    php_flag display_errors off
    php_value error_reporting 6143
    php_flag log_errors on
    

    실제 설치 (/tmp/phperrors.log 사용)와 일치하도록 첫 번째 값을 변경하십시오. vhost.conf 파일 편집이 끝나면 다음과 같이 콘솔에서 구성을 테스트하십시오.

    apachectl configtest
    …or if you don’t have apachectl (as Plesk 8.6 doesn’t seem to)…
    
    /etc/init.d/httpd configtest
    

    그리고 마지막으로 Plesk에게 당신이 이러한 변화를했다고 말하십시오.

    /usr/local/psa/admin/bin/websrvmng -a
    
  5. ==============================

    5.참조하는 경로는 작업 영역의 directoryRoot를 사용하지 않고 incorect입니다. 액세스하려는 파일의 절대 경로를 구축하십시오. 여기서 상대 경로를 사용하고있을 것입니다 ...

    참조하는 경로는 작업 영역의 directoryRoot를 사용하지 않고 incorect입니다. 액세스하려는 파일의 절대 경로를 구축하십시오. 여기서 상대 경로를 사용하고있을 것입니다 ...

  6. ==============================

    6.ispconfig3에 이런 종류의 문제가 있고 이것과 같은 에러가 있다면

    ispconfig3에 이런 종류의 문제가 있고 이것과 같은 에러가 있다면

    그것을 해결하려면 (내 경우), 웹 사이트의 ispconfig3 패널에서 PHP를 SuPHP로 설정하십시오.

    희망은 누군가가 도움이 :)

  7. ==============================

    7.php file.php로 이것을 실행한다면. php.ini를 편집해야합니다. 이 파일 찾기 :

    php file.php로 이것을 실행한다면. php.ini를 편집해야합니다. 이 파일 찾기 :

    : locate php.ini
    /etc/php/php.ini
    

    그리고 파일의 경로를 open_basedir 속성에 추가합니다.

    open_basedir = / srv / http / : / home / : / tmp / : / usr / share / pear / : / usr / share / webapps / : / etc / webapps / : / 실행 / 미디어 / 앤드류 / ext4 / 보호

  8. ==============================

    8.나는이 문제가 @ 업데이트 및 / 또는 이동 후 내 wordpress 사이트 중 하나가 :)

    나는이 문제가 @ 업데이트 및 / 또는 이동 후 내 wordpress 사이트 중 하나가 :)

    데이터베이스 테이블 'wp_options'에서 'upload_path'를 체크인하고 올바르게 편집하십시오 ...

  9. ==============================

    9.그냥 검색

    그냥 검색

    php.ini 파일을 열고 비활성화하십시오. 이것이 바로이 문제를 해결하는 가장 간단한 해결책입니다.

    변경 전 open_basedir =

    변경 후, open_basedir =

    P.s - 변경 후 서버를 다시 시작하는 것을 잊지 마십시오.

    즐겨 ;)

  10. from https://stackoverflow.com/questions/1846882/open-basedir-restriction-in-effect-file-is-not-within-the-allowed-paths by cc-by-sa and MIT license