CentOS 6 VPS의 모든 https URL이 여러 가상 호스트에서 403을 반환한 것으로 나타났습니다. 무슨 일이 일어나고 있는지 확인하기 위해 찾아야 할 특정 구성 설정이 있습니까? 아니면 디버깅에 도움이 되는 로그인가요?
답변1
로그가 입력되었습니다 /var/log/httpd
(로그를 보려면 "루트"여야 함). 거기에서 찾을 수 있습니다 access_log
.error_log
파일에 대한 권한을 설정/확인했습니까? 그룹은 apache
최소한 그 내용을 읽을 수 있어야 합니다. 예를 들어, 나(사용자 gareth
)가 웹사이트를 가지고 있다면 /var/www/html
:-
$ls -l /var/www/html
-rwxr-----. gareth apache 30 Jun 23 13:35 test.html
보시다시피, 저는 rw
파일에 접근할 수 있고 Apache 서비스에도 r
접근할 수 있습니다. 반품:-
$ls -ld /var/www/html
drwx--x---. gareth apache 4096 Jun 23 13:35 /var/www/html/
웹사이트가 포함된 디렉토리에는 Apache가 디렉토리를 읽을 수 있도록 x
이 그룹의 권한이 있어야 합니다. apache
마찬가지로 상위 디렉터리에도 x
권한 집합이 있어야 합니다. 그리고 부모님의 부모님 등등.
파일의 권한이 정상이면 이것이 SELinux
원인이 아닌지 확인하십시오. 달리기:-
`setenforce 0`
그런 다음 다시 시도해 보세요. 지금 작동한다면 문제는 다음을 SELinux
실행하는 것입니다.
`setenforce 1`
SELinux를 다시 활성화합니다.
답변2
403 상태 코드는 클라이언트가 요청한 리소스에 액세스할 수 없음을 나타냅니다. 이는 일반적으로 URL이 참조하는 파일 및/또는 디렉토리에 HTTP 서버가 액세스할 수 있는 권한이 없음을 나타냅니다.
HTTP 서버에서 사용하는 사용자 이름/그룹에 이 디렉터리에 액세스할 수 있는 충분한 권한이 있는지 확인하세요. 또한 /var/log/httpd/access_log
예를 들어 HTTP 서버가 Apache인 경우 이에 대한 정보가 표시됩니다.
구성 파일의 Apache 사용자/그룹 /etc/httpd/conf/httpd.conf
.
예
$ grep -E "^User|^Group" /etc/httpd/conf/httpd.conf
User apache
Group apache
답변3
mod-spdy-beta_current_x86_64.rpm 설치에 문제가 있는 것 같습니다. 이를 제거하고 서버를 다시 시작하면 문제가 해결되었습니다.