nginx에 apache 에서 쓰던 방법으로 htaccess 를 적용하니 안되는것 같다.
이래저래 시도해보다 성공해서 기록용으로 남긴다.
nginx.conf 파일을 보면 기본적으로
root 경로;
location 하위경로 {
}
식의 구성이다.
(만약 location 부분이 없다면 새로 추가하면 된다.)
예를들면 myweb.com/test 경로의 접근을 막고 싶다면
root /home/myweb/www;
location /test {
auth_basic "RESTRICTED ACCESS";
auth_basic_user_file /home/myweb/www/test/.htpasswd;
}
처럼 설정을 저장한다. 따옴표안의 문구는 맘대로 바꿔도 된다. 사용자 계정을 물어보는 창에 나오는 문구다.
위와 같이 설정을 하고 .htpasswd 파일을 만든다.
위치는 당연히 auth_basic_user_file 에 지정한 곳이다.
해당 디렉토리로 들어가서
htpasswd -c .htpasswd 아이디
를 치면 password 를 물어본다. 입력하면 된다.
만들 아이디가 admin 이라면
htpasswd -c .htpasswd admin
htpasswd 도움말을 보면 아이디 추가와 암호변경도 가능하니 도움말을 참고한다.
마지막으로 nginx 를 재시작하면 적용된걸 확인 할수 있다.
test/a test/b 같은 하위디렉토리에도 적용된다.
이래저래 시도해보다 성공해서 기록용으로 남긴다.
nginx.conf 파일을 보면 기본적으로
root 경로;
location 하위경로 {
}
식의 구성이다.
(만약 location 부분이 없다면 새로 추가하면 된다.)
예를들면 myweb.com/test 경로의 접근을 막고 싶다면
root /home/myweb/www;
location /test {
auth_basic "RESTRICTED ACCESS";
auth_basic_user_file /home/myweb/www/test/.htpasswd;
}
처럼 설정을 저장한다. 따옴표안의 문구는 맘대로 바꿔도 된다. 사용자 계정을 물어보는 창에 나오는 문구다.
위와 같이 설정을 하고 .htpasswd 파일을 만든다.
위치는 당연히 auth_basic_user_file 에 지정한 곳이다.
해당 디렉토리로 들어가서
htpasswd -c .htpasswd 아이디
를 치면 password 를 물어본다. 입력하면 된다.
만들 아이디가 admin 이라면
htpasswd -c .htpasswd admin
htpasswd 도움말을 보면 아이디 추가와 암호변경도 가능하니 도움말을 참고한다.
마지막으로 nginx 를 재시작하면 적용된걸 확인 할수 있다.
test/a test/b 같은 하위디렉토리에도 적용된다.