>  기사  >  백엔드 개발  >  파일은 존재하지만 require_once(./*.php)에 오류가 있는 문제에 대한 해결책

파일은 존재하지만 require_once(./*.php)에 오류가 있는 문제에 대한 해결책

黄舟
黄舟원래의
2017-06-25 11:25:4614728검색

문제 설명:

방금 PMA를 설치했는데 Firefox에서 접속하면 화이트보드가 보이고 아무것도 출력되지 않습니다. IE를 사용하면 500 오류(서버 내부 오류)를 볼 수 있습니다

오류 보고서를 연 후 발견한 것은

경고: require_once(./libraries/common.inc.php) [function.require-once]: failed to 오픈 스트림: 35행의 ***mousebombpmaindex.php에 해당 파일이나 디렉터리가 없습니다

치명적인 오류: require_once() [function.require]: 필수 './libraries/common.inc.php'를 열지 못했습니다(include _path='.;C:php5pear') 35행의 ***mousebombpmaindex.php

그리고 파일이 존재하며 IUSR(IIS 익명 액세스 사용자)에게 권한이 있습니다.

해결책:

화이트보드 해결 방법: php.ini에서 관련 오류 출력 설정을 수정하세요. 기본 php.ini에서는 display_error=off를 display_error=on으로 변경하면 됩니다.

require 오류 해결 방법: 모두 상대 경로 파일의 경우 ./로 시작하는 상위 디렉터리의 IUSR에는 읽기 가능한 권한이 활성화되어 있어야 합니다. PMA를 구성할 때뿐만 아니라, 어떤 웹사이트이든 wimp에서 ./로 시작하는 파일에 액세스하려면 상위 디렉터리에서 읽을 수 있어야 한다는 사실에 주의해야 합니다.

관련 문헌:

때때로 PHPmyAdmin을 설치한 후 IE에서 액세스할 때 다음 상황이 발생합니다.

경고: require_once(./libraries/common.lib.php): 스트림을 열지 못했습니다: 해당 파일 또는 디렉터리가 없습니다. ***index.php 40행
치명적 오류: main(): * **index.php에서 필수 './libraries/common.lib.php'(include_path='.;c:php5pear')를 열지 못했습니다. on line 40

이 문제의 원인은 다음과 같습니다.

1. PHPmyAdmin 디렉터리가 디스크의 루트 디렉터리에 있습니다
2. PHPmyAdmin 디렉터리와 상위 디렉터리의 권한 설정에 문제가 있습니다.

해결책:

·D:SiteManagephpmyadmin에 배치하는 등 디스크의 루트 디렉토리에 PHPmyAdmin 디렉토리를 배치하지 마십시오.

·PHPmyAdmin 디렉토리 및 상위 디렉토리에 대한 권한을 다음과 같이 설정하십시오.
사용자 읽고 실행
IUSR_… … 읽고 실행하세요

다른 해결 방법:

----------------

이상한 문제가 발생했습니다. phpmyadmin을 설치한 후 다음 오류가 보고됩니다.

경고: require_once(./libraries/common.lib.php) [function.require-once]: 스트림을 열지 못했습니다: X:Xxxxxphpmyadminindex.php에 해당 파일이나 디렉터리가 없습니다. 36행
치명적인 오류: require_once() [function.require]: 36행의 X:Xxxxxphpmyadminindex.php에서 필수 './libraries/common.lib.php'(include_path='.;C:php5pear')를 열지 못했습니다

새로 설치된 Mysql5.2로

Mysql 데이터베이스를 가져오고 BLog 홈페이지를 열었지만 여전히 위와 유사한 오류가 보고됩니다.

잠시 디버깅한 후 마침내 해결책을 찾았습니다.

원래 ACls 권한은 다음과 같습니다. phpmyadmin 및 php 설치 디렉터리의 우수한 ACls가 부족합니다. 하하!
phpmyadmin, php 및 해당 상위 수준 디렉터리에 동일한 Acls 사용자 읽기 권한을 부여한 다음 블로그를 열고 성공적으로 완료하세요!

Notes 및 보안 위험:
1. 사이트의 루트 디렉터리나 가상 호스트에 phpmyadmin을 설치하지 마세요. 게스트 사용자가 루트 디렉터리 권한을 가지게 되기 때문입니다.
2. phpmyadmin에게 사용자를 실행하는 IIS 프로세스와 IIS 익명 사용자 읽기 권한을 부여합니다. ACL 권한 목록에 모든 사람을 추가하지 않는 것이 좋습니다.
3. 프로그램을 디버깅하거나 스크립트 환경을 구성할 때 먼저 FAQ를 많이 읽어보세요. 그런 다음 오류 코드에서 이유를 찾아보세요... (예를 들어 위 오류 메시지의 경우 다음 줄을 엽니다. index.php의 36을 살펴보고 PHP 코드를 살펴보세요. 명령을 실행하면 오류의 원인을 알 수 있습니다.)

참고 팁:

1 phpmyadmin의 압축을 풀고 루트 디렉터리에 설치하지 마세요. 게스트 사용자는 루트 디렉터리의 권한을 갖게 됩니다.

2. phpmyadmin에게 iis 사용자 권한과 사용자 그룹 사용자 권한을 부여합니다. 모든 사람 권한을 추가하는 것은 권장되지 않습니다.

——————————————

위 두 가지 방법은 같은 생각이니 한번 해보세요

위 내용은 파일은 존재하지만 require_once(./*.php)에 오류가 있는 문제에 대한 해결책의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.