.htaccess 사용 가이드
.htaccess는 Apache 웹 서버의 디렉토리별 설정 파일입니다. 메인 서버 설정에 접근 권한이 없어도(공유 호스팅 등) 디렉토리 단위로 URL 재작성, 인증, 캐싱, MIME 타입 등을 정의할 수 있습니다. 본 도구는 가장 흔하게 사용되는 규칙—HTTPS 강제, www 통일, 301 리다이렉트, 캐싱, 압축, 보안—을 GUI로 묶어 한 번에 출력합니다.
생성된 .htaccess 파일을 사이트 루트 디렉토리에 업로드하면 즉시 적용됩니다. 단, 잘못된 RewriteRule은 500 에러를 일으킬 수 있으므로 적용 전에 백업하고, 가능하면 스테이징 환경에서 먼저 테스트하세요.
주요 옵션
- HTTPS 강제: HTTP 요청을 영구(301) HTTPS로 보냄
- www 강제 / 제거: 정규 URL(canonical) 통일로 SEO 중복 방지
- 301 리다이렉트: 옛 URL → 새 URL 매핑
- mod_deflate: HTML/CSS/JS 등 Gzip 압축으로 전송량 감소
- mod_expires: 정적 자산에 1년 캐시 헤더 부여
- Hotlink 차단: 외부 사이트의 이미지 직접 링크 차단
자주 묻는 질문 (FAQ)
Q. 적용 후 500 에러가 발생합니다.
A. mod_rewrite 모듈이 활성화되지 않았거나, AllowOverride가 None으로 설정되어 있을 수 있습니다. 호스팅 제공자에게 문의하거나 apachectl -M | grep rewrite로 확인하세요.
Q. 301과 302 중 어떤 걸 쓰나요?
A. 영구 이동에는 301(검색엔진이 새 URL로 색인 이전), 임시에는 302를 씁니다. SEO 측면에서는 301이 안전합니다.
Q. Nginx에서도 쓸 수 있나요?
A. .htaccess는 Apache 전용입니다. Nginx는 nginx.conf에 rewrite·return 디렉티브로 같은 효과를 냅니다.