웹 패널 리다이렉트 설정 가이드
웹 패널(BT Panel / aaPanel 등)을 사용하면 Nginx나 Apache 설정 파일을 직접 작성하지 않고도 GUI로 리다이렉트를 설정할 수 있습니다. 그래도 리다이렉트 설정 위치를 파악하고, 문제 발생 시 해결 방법을 아는 것은 중요합니다.
방법 1: GUI 리다이렉트 도구 (권장)
웹 패널에는 사이트 설정 내에 리다이렉트 기능이 내장되어 있습니다.
단계
1. 사이트 설정 열기 — 패널에 로그인하고 "웹사이트"로 이동하여 대상 사이트의 "설정"을 클릭합니다.
2. 리다이렉트 탭 찾기 — 설정 대화상자에서 "리다이렉트" 탭을 클릭합니다.
3. 리다이렉트 규칙 추가 — "리다이렉트 추가"를 클릭하고 다음을 입력합니다:
- 유형 — 301 (영구) 또는 302 (임시)
- 도메인 — 리다이렉트 원본 도메인
- 리다이렉트 모드 — 사이트 전체 또는 경로 기반
- 대상 URL — 리다이렉트할 URL
일반적인 시나리오
HTTP → HTTPS
가장 쉬운 방법: "SSL" 탭으로 이동하여 "HTTPS 강제"를 켭니다. 패널이 자동으로 리다이렉트를 설정합니다.
non-www → www
- 유형: 301
- 도메인: example.com
- 모드: 사이트 전체 리다이렉트
- 대상:
https://www.example.com
이전 도메인 → 새 도메인
- 유형: 301
- 도메인: old-domain.com
- 모드: 사이트 전체 리다이렉트
- 대상:
https://new-domain.com
💡 내부 동작 원리
패널의 GUI 리다이렉트 도구는 내부적으로 Nginx 또는 Apache 설정 규칙을 작성합니다. 설정 구문에 익숙하다면 파일을 직접 편집하여 더 유연한 설정이 가능합니다.
방법 2: 설정 파일 직접 편집
사이트 설정의 "설정 파일" 탭을 클릭하여 Nginx 설정을 직접 편집할 수 있습니다.
Nginx 예제
# HTTPS 강제
server {
listen 80;
server_name example.com www.example.com;
return 301 https://$host$request_uri;
}
# 특정 경로 리다이렉트
server {
listen 443 ssl http2;
server_name example.com;
location = /old-page {
return 301 /new-page;
}
}
Apache (.htaccess)
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}/$1 [R=301,L]
⚠️ 방법을 혼용하지 마세요
같은 사이트에서 GUI 리다이렉트 도구와 수동 설정 편집을 동시에 사용하지 마세요 — 충돌할 수 있습니다. 하나의 방법을 선택하여 일관되게 사용하세요.
문제 해결
리다이렉트가 적용되지 않음
- 브라우저 캐시를 지우거나 시크릿 창에서 테스트
- CDN을 사용 중이라면 CDN 캐시도 삭제
- 설정의 구문 오류 확인
- 충돌하는 규칙이 없는지 확인
리다이렉트 루프
보통 규칙 중복이 원인입니다 — 예를 들어 GUI 도구와 수동 설정 모두에서 같은 리다이렉트를 설정한 경우. 하나를 제거하세요.
로그 확인
# Nginx 접속 로그
tail -f /www/wwwlogs/your-domain.log
# Nginx 오류 로그
tail -f /www/wwwlogs/your-domain.error.log
curl로 테스트
curl -I http://example.com
curl -IL http://example.com
또는 301check.com으로 전체 리다이렉트 체인을 상세하게 확인할 수 있습니다.
모범 사례
- 간단한 리다이렉트에는 GUI 도구 사용 — 실수가 적음
- UI로 처리할 수 없는 설정이 필요한 경우에만 설정 파일 직접 편집
- 변경 전 설정 백업 (에디터에 백업 버튼이 있음)
- 변경할 때마다 테스트
- 리다이렉트 체인을 정기적으로 감사 — 이전을 거듭하면 체인이 누적됨