이 두 가지 방법으로 권한을 설정하는 것의 차이점은 무엇입니까?

이 두 가지 방법으로 권한을 설정하는 것의 차이점은 무엇입니까?

방법 1: apache2.conf(또는 httpd.conf)를 통해:

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

방법 2: 명령줄에서 Chmod.

이 두 가지 방법 모두 동일한 작업을 수행하지 않습니까?

그리고 또 다른 질문에 답변해 주신다면 일반적으로 var 및 www 폴더에는 어떤 권한이 설정되어 있나요?

감사해요

답변1

방법 2는 Apache뿐만 아니라 파일 시스템 수준에서 권한을 설정합니다. 이는 파일에 대한 권한을 설정하는 안전한 방법입니다.

방법 1은 애플리케이션 레이어에 권한을 설정하지만 방법 2도 적용됩니다. Apache에서 콘텐츠를 읽을 수 없는 경우 방법 1에서 클라이언트가 파일을 읽을 수 있다고 말해도 읽을 수 없습니다.

따라서 빠른 대답은 '아니오'입니다.
방법 2는 Apache가 PHP 파일을 읽을 수 있지만 다른 사용자/프로세스는 읽을 수 없도록 하는 데 사용됩니다. 방법 1은 비밀번호 등으로 페이지 액세스를 보호하는 데 사용됩니다.

PHP 태그를 설정하셨군요. 방법 1이 PHP가 읽거나 쓸 수 있는 내용에 영향을 미치지 않도록 주의하세요. 방법 2와 PHP 구성이 이를 수행합니다.

/var는 내 시스템에서 755 루트/루트입니다. www는 필요한 Apache 구성 및 보안에 따라 크게 달라집니다.

관련 정보