개인적으로 모든 메모를 워드프레스에서 관리하기로 마음먹고 이것 저것 설정하다보니 미디어 파일에 올라가는 pdf
pptx
xlsx
과 같은 파일을 암호화 또는 접근할 수 없게 설정해야 했다. 하지만 나는 또 봐야하는 입장이었다.
워드프레스에서 구성해서 하는 것은 한계가 있어서 웹서버에서 접근 할 수 없게 설정해야겠다 생각했다.
1단계
일단 인증받지 못한 유저가 접근하려할때 나타낼 401.html
을 워드프레스 루트폴더에 생성
AUTHENTICATION REQUIRED
You need a username and password to access this area.
Code language: JavaScript (javascript)
2단계
.htaccess
파일에 디렉토리 접근할때 인증절차를 추가
ErrorDocument 401 /401.html
AuthName "Secure Area"
AuthType Basic
AuthName "Password Protected Area"
AuthUserFile 절대경로/.htpasswd
Require valid-user
Code language: PHP (php)
.htpasswd
의 경로는 절대경로로 /var/www/html
과 같이 설정해줘야한다.
3단계
.htpasswd
파일을 디렉토리에 업로드
user:password
Code language: CSS (css)
이 파일에 여러 사용자 이름과 암호를 추가할 수 있습니다. 각각의 줄에 추가합니다.
암호는 암호화해야 하며 여기에서 만들 수 있습니다.
http://www.kxs.net/support/htaccess_pw.html
예외 폴더 지정하기
위 방법으로 일하는 자료들을 잘 보관했다. 하지만 외부에 공개해야하는 일 카테고리의 파일을 사용할 일이생겼다.
그럼 어떻게 특정 폴더의 파일들의 보호를 풀수 있을까?
Satisfy any
외부용으로 사용할 폴더에 위 규칙으로 추가해주면 👌
memo
- 1단계에서
401.html
파일을 추가하지 않으면 WordPress에서 보호 된 디렉터리로 이동하려고 할 때 404에러를 발생시킵니다. - 원하는 경우
401.html
을 자체 폴더에 넣을 수 있습니다..htaccess
파일에서 위치를 변경해야함 AuthUserFile
에 대한 전체 서버 경로를 입력해야합니다.