웹페이지중 특정 디렉토리 접근 제한하기
서버를 구축하여 사용하다 보면 아무나 접근하면 곤란한 디렉토리를 어떻게 처리해야할 지 난감합니다. 이럴 경우 Apache에서 이용할 수 있는 .htaccess와 .htpasswd 를 이용하여 본인의 웹페이지중 특정 디렉토리에 인증 기능을 사용할 수 있습니다. 물론 Apache 설정은 .htaccess 를 사용할 수 있도록 설정되어 있어야 합니다.[1]
홈페이지 도메인: http://www.mydomain.com/
서버의 홈페이지 루트의 절대경로: c:/apm/apache/htdocs/
이렇게 가정할 경우 http://www.mydomain.com/private/ 이라는 디렉토리에 인증 절차를 사용할 경우에 경로 c:/apm/apache/htdocs/private/ 에 다음과 같이 .htaccess 파일을 생성하여 줍니다.
AuthUserFile c:/apm/apache/htdocs/private/.htpasswd AuthName "Private" AuthType Basic <Limit GET> require valid-user </Limit>
이 후에 커맨드 콘솔을 실행시켜 Apache가 설치되어 있는 디렉토리로 이동합니다. 그리고 다음과 같이 입력합니다. “htpasswd -c .htpasswd Username” << 인증에 사용할 Username 입니다. 위에서 .htaccess 파일에 기재한 AuthName이 아닙니다. 여기서는 sample로 입력해보겠습니다. 그러면 Password를 묻고 두 번 입력하면 현재 디렉토리에 .htpasswd 파일이 생성됩니다.[2] (저의 Apache 경로는 삭제하였습니다.)
이렇게 생성된 .htpasswd 파일을 .htaccess 파일이 있는 c:/apm/apache/htdocs/private/ 에 이동합니다. 그리고 이제 웹브라우저로 http://www.mydomain.com/private/ 에 접속을 해보면 인증창이 팝업됩니다. 이 때 위에서 설정한 Username과 Password를 입력하면 접속할 수 있습니다.
- Windows Apache에 eAccelerator 설치하기 (May 29, 2010 | Match 19%)
APM을 구성하게 되면 느린 PHP의 실행속도를 개선하기 위해 Zend Optimizer를 필수로 사용하게 됩니다. 이 외에... - mod_security2 소개 (May 29, 2010 | Match 17%)
어느 정도 개인서버를 운영하다 보면 초기에는 각종 데몬의 설치 및 설정이 까다로운 문제로 여겨지지만 일정...