centos 5.6의 Apache는 권한 거부 오류를 제공합니다.


10

centos 5.6에서 아파치를 실행 중이며 / var / www / html (아파치 기본 루트 디렉토리) 이외의 디렉토리에 PHP 스크립트를로드하려고 할 때마다 권한 거부 오류가 발생합니다.

그러나 기본 루트 (/ var / www / html)에 대해 새 루트 디렉토리 (/ var / www-dev)의 권한을 확인하면 동일하게 일치합니다. 둘 다 말한다 : root : root 755

나는 심지어 소유권을 아파치 : 아파치로 변경하려고 시도했지만 여전히 같은 오류가 발생했습니다.

그러나 아파치 구성을 다시 변경하면 기본 루트 디렉토리 (/ var / www / html)가 작동합니다.

내가 뭔가 잘못하고 있습니까?

이것들은 내가 바꾸고있는 설정입니다 :

DocumentRoot "/var/www/html"

<Directory "/var/www/html">
    Options Indexes FollowSymLinks
    AllowOverride None
    Order allow,deny
    Allow from all
</Directory>

참고 : 아파치 구성 및 권한을 변경할 때마다 아파치를 다시 시작합니다.

또한 : 나는 또한 REMI 및 EPEL을 활성화했습니다.


SELinux가 활성화되어 있습니까?
Bart De Vos

@TiZon 나는 그렇게 믿지 않습니다. 그래야합니까?
koeder

우리에게 정확한 메시지를 줄 수 있습니까? 이 "허가 거부"가 파일 시스템에서 또는 아파치에서 직접 발생합니까 (예 : 일부 지시문에 의해)? error.log 파일에 메시지가 있습니까?
라파엘 루티 거

그리고 두 하위 디렉토리에 .htaccess 파일이 있는지 확인하십시오.
라파엘 루티 거

1
감사합니다 @TiZon! SELinux가 활성화되었습니다. / etc / selinux / config 파일 편집을 비활성화하면 내 웹 앱을 다른 디렉터에로드 할 수있었습니다.
koeder

답변:


11

일반적으로 폴더에 대한 액세스 권한을 부여하지 않은 Selinux에서 제공됩니다. 하다

ls -alZ /var/www/

html 폴더에 system_u : object_r : httpd_sys_content_t 컨텍스트가 없으면 chcon으로 수정하십시오.

chcon -v -R --type=httpd_sys_content_t /var/www/html

http://wiki.centos.org/HowTos/SELinux


@Julien Vehent에게 감사드립니다! 귀하의 방법으로 SELinux를 모두 비활성화하지 않고 특정 폴더에 대한 SELinux 권한을 편집 할 수 있기 때문에 답변을드립니다. 대단히 감사합니다. 이것은 효과가 있었다! 두통을 덜어주었습니다.
koeder
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.