저는 Apache 2.4 및 PHP 5.6.27과 함께 Fedora 23을 실행하고 있습니다. Apache와 PHP는 모두 표준 Fedora 저장소에서 설치됩니다.
내 문제는 Require all granted
내 웹 사이트의 웹 호스트 구성 설정에도 불구하고 내 웹 사이트(및 내 브라우저)를 탐색하려고 할 때 여전히 다음 오류가 발생한다는 것 입니다 403 Forbidden
.
AH01630: 서버 구성에 의해 클라이언트가 거부되었습니다: /home/kevin/appsdev/mywebapp/phpinfo.php
이것은 내 가상 호스트 구성입니다.
<VirtualHost 172.16.3.52:80>
ServerName localdev.mywebapp.net
DocumentRoot /home/kevin/appsdev/mywebapp
<Directory /home/kevin/appsdev/mywebapp>
AllowOverride All
Require all granted
</Directory>
</VirtualHost>
위 구성은 Apache와 함께 제공되는 기본 구성 파일 끝에 추가됩니다 httpd.conf
.
Apache는 사용자로 실행됩니다 apache
.
또한 소유권을 다음으로 설정했습니다 /home/kevin/appsdev/mywebapp
.
chown -R apache:apache /home/kevin/appsdev/mywebapp
내 권한은 다음과 같습니다.
chmod -R 755 /home/kevin/appsdev/mywebapp
나는 심지어 (다소 장난스러운) 변경을 시도했습니다.
<Directory />
AllowOverride none
Require all granted ## default is: Require all denied
</Directory>
나는 또한 selinux를 비활성화했습니다.
.htaccess
홈페이지에 파일이 없습니다.
아파치를 다시 시작했지만 여전히 AH01630: client denied by server configuration..
브라우저에 오류와 a가 표시됩니다.403 Forbidden
Running이 httpd -t
나에게 알려주 Syntax OK
므로 아무런 문제가 없습니다.
내가 뭘 잘못하고 있는 걸까요? 조금 혼란스럽나요?
답변1
웹 서버를 실행하는 사용자( apache
기본적으로)는 파일을 열 수 있어야 합니다. 이것은 의미한다모든 경로접근이 가능해야 합니다. 알겠습니다. home dir을 사용하고 계십니다 /home/kevin
. 이러한 디렉터리는 사용자 및 사용자 그룹(예: )에 대해서만 0750
올바르게 설정되므로 Apache는 해당 디렉터리에 액세스할 수 없습니다.
그 안에 있는 파일과 디렉터리에 대한 액세스를 허용할 수 있지만 chmod o+x /home/kevin
, 누구든지 홈 디렉터리를 읽을 수 있습니다(올바른 경로를 알고 있는 경우). 더 나은 해결책은 홈 디렉토리를 사용하지 않고 파일을 /var/www/
or 에 넣고 /srv/
apache와 사용자에게 올바른 권한을 부여하는 것입니다.
그럼에도 불구하고 항상 오류 로그의 해당 섹션을 질문에 첨부하십시오. 이 문제에 대한 추가 정보가 있어야 합니다.