fopen()이 Linux Mint의 apache2 로컬 서버에서 작동하지 않습니다
test.txt 파일이 생성되고 Sublime을 사용하여 파일을 열고 쓸 수 있습니다. 이 특정 프로젝트의 디렉토리는
/var/www/site02
입니다. 설치 후 apache2를 구성할 때 파일을 읽고 쓸 수 있도록 이 특정 디렉터리(site02)의 소유권을 구체적으로 변경했습니다(sudo chown $USER:$USER -R... 이해가 되실 겁니다). 실제로 이 디렉터리에서 내 사용자 계정으로 읽고 쓸 수 있습니다(이 디렉터리에서는 "sudo" 없이 cli git 명령을 자유롭게 사용할 수 있습니다).위에 언급된 코드를 사용하여
<인용문>index.php
에 액세스하면 다음 오류가 발생합니다."경고: fopen(test.txt): 스트림을 열 수 없습니다: /var/www/site02/index.php에서 권한이 거부되었습니다. 6행"
인용문>무슨 일이 일어났나요? 나는 문제에 대해 인터넷 검색을 시도했지만 수천 가지 다른 이유를 발견하여 더 혼란스러워졌습니다. 문제가 Apache 서버에 문제가 있습니까? 아니면 PHP의 일부 구성을 변경해야 합니까?
그래서 이 질문을 게시한 후 그래픽 인터페이스에서 권한을 확인하기 위해 파일 관리자(Thunar)로 /var/www/site02를 열기로 결정했습니다. 예, 이 디렉토리의 소유자는 저이고 저는 읽고 쓸 수 있습니다. 그룹은myusername이고 권한은 읽기 및 쓰기입니다. 그러나 "다른 사람"에게는 읽기 권한이 하나만 있습니다. 읽고 쓰기로 바꿨습니다. 그리고 몇 가지 코드로 테스트해보세요:
으아아아그리고 효과가 있었어요!