URL file-access is disabled in the server configuration, allow_url_fop…
페이지 정보
작성자 서방님 댓글 0건 조회 98회 작성일 13-04-16 09:37본문
[PHP] URL file-access is disabled in the server configuration, allow_url_fopen
URL file-access is disabled in the server configuration 이 에러 메시지는 파일에 대한 접근을 http로 한 경우에
발생합니다.
<? include_once "http://abcdomain.com/inc/file.php"; ?> |
위와 같이 abcdomain.com의 파일을 include 시켜서 현재의 도메인으로 불러오려면 이런 에러메시지가 뜨는 것입니다.
한 마디로 외부파일을 함부로 불러오지 마라는 뜻이죠.
이것은 서버 설정에서 php.ini에 allow_url_fopen = off 로 설정되어 있기 때문입니다.
allow_url_fopen는 PHP에서 include를 이용하여 어떤 파일을 Include할 때 http, ftp등 외부파일을 url방식으로 Include 할 수 있도록
허용해 주는 기능입니다. 이 기능을 허용(allow_url_fopen = ON) 하게 되면, 보안에 취약한 웹소스를 통해 해킹의 피해를 입을 수 있기
때문에 한국정보진흥원에서는 이를 허용하지 않기를 권고하고 있습니다.
해결하는 방법은 서버설정에서 allow_url_fopen = off를 "on"으로 해주거나, 계정 루트의 .htaccess 파일 속에
PHP_flag allow_url-fopen on을 추가하는 방법이 있지만 사용하지 않는 게 좋을 것 같습니다.
그런데 아래의 그림과 같이 Sub Domain을 사용하는 경우
루트인 www.abcdomain.com의 일부 파일을 공통으로 쓰게 하고 싶을 때가 있습니다. 서브도메인을 완전히 독립적으로 사용하지 않는 한 이런 경우는 반드시 오기 마련인데요.
이때는 아래와 같이 $_SERVER[DOCUMENT_ROOT]를 사용하거나
<? require_once $_SERVER[DOCUMENT_ROOT]."/common_inc.php"; ?> 또는 <? include_once $_SERVER[DOCUMENT_ROOT]."/common_inc.php"; ?> |
루트의 절대경로까지 포함하여 include 시키면 됩니다.
<? include_once "/home/hosting_users/kkk/www/common_inc.php"; ?> |
댓글목록
등록된 댓글이 없습니다.