PHP fopen() 오류: 스트림을 열지 못했습니다.권한 거부
WordPress 플러그인 쓰는 법을 배웁니다.XML 파일에 데이터를 쓰는 데 도움이 필요합니다.저는 로컬 머신에서 MAMP를 실행하는 Mac에서 PHP 5.2.13을 사용하고 있습니다.플러그인에는 다음과 같은 기능이 있습니다.
$file_handle = fopen('markers.xml', 'w');
$stringdata = "Test Info";
fwrite($file_handle, $stringdata);
fclose($file_handle);
위의 작업을 실행하면 다음 오류가 발생합니다.
경고: fopen(markers.xml) [함수]fopen]: 스트림을 열지 못했습니다.73행의 /Users/my_name/Sites/my_site/wp-content/plugin/my_plugin_folder/my_plugin_main_file.php에서 권한이 거부되었습니다.
경고: fwrite(): 제공된 인수가 75행의 /Users/my_name/Sites/my_site/wp-content/plugins/my_plugin_folder/my_plugin_main_file.php에 있는 유효한 스트림 리소스가 아닙니다.
경고: fclose(): 제공된 인수가 76행의 /Users/my_name/Sites/my_site/wp-content/plugins/my_plugin_folder/my_plugin_main_file.php에 있는 올바른 스트림 리소스가 아닙니다.
$file_handle 행의 절대 경로 http://my_site/wp-content/plugins/my_plugin_folder/markers.xml을 사용해 보았습니다.근데 그게 안 되더라고요.
markers.xml에 대한 권한도 다음과 같이 변경해 보았습니다.
(Me): 읽기 및 쓰기(알 수 없음):읽기 전용: 읽기 & 쓰기
어떤 이유에서인지 Mac에서는 (알 수 없는) Read & Write(읽기 & 쓰기)그게 차이를 만드는지는 잘 모르겠어요.파일을 마우스 오른쪽 버튼으로 클릭하고 '정보 가져오기'를 선택하여 권한을 변경했습니다.
phpInfo()에는 다음과 같은 정보가 있습니다.
"등록된 PHP 스트림 https, ftps, compress.zlib, compress.bzip2, php, 파일, 데이터, http, ftp"
Word Press 설정이 문제의 원인입니까?아니면 그냥 PHP 문제인가요?
이 문제를 해결할 방법이 없을까요?
감사해요.
관리자 권한을 변경해야 할 수 있습니다.Mac에서 터미널을 열고 markers.xml이 있는 디렉토리를 엽니다.그런 다음 다음과 같이 입력합니다.
sudo chmod 777 markers.xml
패스워드를 입력하도록 요구될 수 있습니다.또, 디렉토리가 풀 액세스를 허가하지 않는 경우도 있습니다.WordPress를 잘 모르기 때문에 mysite 디렉토리로 이동하는 각 디렉토리의 권한을 변경해야 할 수 있습니다.
[function.fopen]: failed to open stream
php.ini 파일에 액세스할 수 있는 경우 Fopen을 활성화해 보십시오.각 행을 찾아 "on"으로 설정합니다.& wp ( localhost / wordpress / function ) 。php.ini의 fopen:
allow_url_fopen = off
should bee this
allow_url_fopen = On
And add this line below it:
allow_url_include = off
should bee this
allow_url_include = on
언급URL : https://stackoverflow.com/questions/7665093/php-fopen-error-failed-to-open-stream-permission-denied
'programing' 카테고리의 다른 글
약속을 돌려주는 각진 공장 (0) | 2023.03.19 |
---|---|
json_encode()가 잘못된 문자를 가진 문자열을 삭제하지 않도록 하는 방법 (0) | 2023.03.19 |
ESLint broken: 제안이 있는 규칙은 "meta.has Suggestions" 속성을 "true"로 설정해야 합니다. (0) | 2023.03.19 |
부트스트랩 파일에서 다른 스프링 프로파일을 올바르게 설정하려면 어떻게 해야 합니까(다른 클라우드 구성 서버를 대상으로 하는 스프링 부트용)? (0) | 2023.03.19 |
Angular UI-Router의 한 상태에서 더 많은 옵션 파라미터 (0) | 2023.03.19 |