아파치가 특정 파일을 다운로드하는 것을 방지하는 방법은 무엇입니까?

아파치가 특정 파일을 다운로드하는 것을 방지하는 방법은 무엇입니까?

아파치가 특정 파일을 다운로드하는 것을 방지하는 방법은 무엇입니까? (예: .py 및 .sh)

이와 같은 파일을 제공하고 다운로드하는 것을 피하고 싶습니다.

www.site.com/file.sh
www.site.com/file.py

하지만 나는 이렇게 하려고 노력한다

<Files ~ "^\.sh">
   Order deny,allow
   deny from all
</Files>

<Files ~ "^\.py">
   Order deny,allow
   deny from all
</Files>

<FilesMatch "\.(sh|py)$">
   Order deny,allow
   deny from all
</FilesMatch>

아무것도 작동하지 않는 것 같습니다. 파일을 넣어 보았습니다.

/etc/apache2/apache2.conf

반품

/etc/apache2/sites-available/default

아무것도 작동하지 않습니다.Apache에서는 여전히 파일을 다운로드할 수 있습니다..

답변1

파일 일치 용어가 잘못된 것 같습니다.

<Files ~ "^\.py">

이름이 다음과 같은 파일과 일치합니다.시작문자로 .py. 당신은 원할 것이다

<Files ~ "\.py$">

대신에.

하지만 FilesMatch정규식이 올바른 것 같습니다. 그렇다면 문제는 다른 곳에 있을 수도 있습니다. 아마도 Apache가 새로운 스타일의 액세스 제어 지시문만 사용하고 있을까요?

오래된 것을 교체해 보세요

Order deny,allow
deny from all

새로운 스타일과 동일:

Require all denied

관련 정보