APM 설치 후 아파치 403 에러(403 Forbidden)

리눅스에서 APM을 설치한 후에 아파치 403 에러가 뜰 경우 SELinux가 켜져 있는지 먼저 확인할 수 있습니다.

1. APM 설치 후 아파치 403 에러 발생 시 퍼미션 확인

아파치 403 에러(403 Forbidden error)

SELinux 설정을 끈 이후에도 동일한 오류가 발생한다면 퍼미션(권한) 문제이기 때문에 폴더의 소유권과 권한을 확인해 주어야 합니다.

tail -f /etc/httpd/logs/error_log

[Sat Jan 13 15:59:20.820605 20xx] [core:error] [pid 95873:tid 96079] (13)Permission denied: [client 122.43.208.254:57569] AH00035: access to / denied (filesystem path '/home/tozisin/www') because search permissions are missing on a component of the path

에러 로그를 확인 했을 때 위와 같은 오류가 확인되며, 퍼미션을 711로 설정 후 해결되었습니다. home/userid는 701이면 퍼미션 에러가 안 나는 것이 보통인데 이 부분은 좀 더 체크가 필요할 것 같습니다.

chmod 711 ./
[root@host-10-0-0-249 userid]# ll -a
total 12
drwxr-xr-x. 3 userid nobody  73 Jan 13 15:52 .
drwxr-xr-x. 5 root    root    50 Jan 13 15:51 ..
-rw-r--r--. 1 userid nobody  18 Jan 23  20xx .bash_logout
-rw-r--r--. 1 userid nobody 141 Jan 23  20xx .bash_profile
-rw-r--r--. 1 userid nobody 492 Jan 23  20xx .bashrc
drwxr-xr-x. 2 userid nobody  24 Jan 13 15:53 www

2. 소유권 확인

소유권의 사용자와 그룹도 함께 체크해 줍니다.

drwxr-xr-x. 2 userid nobody

3. httpd.conf 권한 설정

# apache 설정 2.4

vi /etc/httpd/conf/httpd.conf

  <Directory /home>
        Options Indexes FollowSymLinks
        AllowOverride All
        Require all granted
    </Directory>
  
  # apache 설정 2.2
  
  <Directory /home>
        Options Indexes FollowSymLinks
        AllowOverride None
        Order allow,deny
        Allow from all
    </Directory>
  • Options : 지정한 디렉토리(재귀적)의 모든 폴더와 파일에 접근 제어 설정.
  • Indexes : 웹 서버 디렉토리 접근 시 index.html의 파일이 없을 때 디렉토리 내 파일 목록 리스트를 웹브라우저에 출력함.
  • FollowSymLinks : 심볼릭 링크 허용. 웹 브라우저에서 링크 파일 경로 허용하므로 보안 상 미설정을 권장
  • None: 모든 것을 허용하지 않음.
  • AllowOverride : 디렉터리의 설정 내용을 별도의 외부 파일(.htaccess)에서 재설정 및 덮어쓸 수 있는지 여부를 결정
  • 보안 및 성능상의 이유로 None으로 설정하고 <Directory> 블록에 직접 작성하는 것을 권장합니다. WordPress 등의 플랫폼에서는 .htaccess 파일이 기본적으로 사용됩니다.
  • Require 옵션
  • Require all granted : 무조건 허용
  • Require all denied : 무조건 금지
  • Require ip 203.222.192.32 : 특정 IP만 접근 하용

아파치 403 에러는 다양한 이유로 발생할 수 있으며, 이 글에서 찾은 이유 외에도 여러가지가 있을 수 있습니다. 검색 키워드를 영어로 “403 forbidden error in httpd”, “forbidden 403″과 같이 검색해서 영문 사이트에서 더 다양한 원인을 찾는 방법을 생각할 수 있습니다.

Similar Posts