Apache 서버에서 htaccess 파일 여러 개 지정하기
개발을 진행하는 과정에서 php router 사용을 위해 .htaccess 파일을 이용해 rewrite 설정했다. 그런데 개발서버는 특정 IP에서만 접근이 가능하도록 하기 위해서 아래와 같은 설정을 추가하려고 했다.
Require all denied
Require ip 123.123.123.123
그런데 소스코드를 git 을 이용해 관리하다보니 접근 제어 설정은 .htaccess 파일에 추가되는 게 싫었다. 이 때부터 문제가 발생.. AccessFileName .htaccess2 .htaccess
와 같이 VirtualHost 설정에 추가해서 사용할 수 있다. 기대했던 것은 각각의 파일에 설정을 추가해서 각각 적용되는 것이었는데 예상과는 달리 처음에 설정된 .htaccess2
파일이 존재하면 이 파일의 설정만 적용되는 것이 아닌가?
git 으로 관리되는 .htaccess
파일에 설정을 추가해도 되지만 공개된 repo 인 관계로 다른 사람이 사용할 수도 있어서 모르고 사용하면 접근이 안된다고 할 수도 있는 터였다. 어쩔 수 없이 .htaccess2
파일이 먼저 적용되도록 설정하고 접근 제어 설정 외에 .htaccess
파일의 설정도 추가해서 사용하기로 했다. 더 좋은 방법이 있다면 그렇게 했을텐데.. 방법이 지금은 떠오르지 않는다.
이걸로 인해 .htaccess
파일을 여러 개 사용했을 때 적용되는 순서가 있고 처음 로드된 파일의 설정만 적용된다는 것을 확인할 수 있었다. 근데 이렇게 하면 설정 파일을 여러 개 지정할 수 있도록 한 게 의미가 있나 싶다.