그누보드 짧은 주소(SEO-friendly URL) 기능을 활성화하려고 할 때, 제대로 작동하지 않는 경우가 종종 발생합니다. 짧은 주소는 검색 엔진 최적화(SEO)에 유리하고 사용자에게도 가독성이 높은 URL을 제공하지만, Apache 설정, .htaccess 파일 구성, Rewrite 모듈 미활성화 등의 이유로 적용에 실패할 수 있습니다.
이 글에서는 그누보드 짧은 주소가 작동하지 않을 때의 원인과 해결 방법을 단계별로 정리해드립니다. Apache 웹 서버 환경을 기준으로 작성되었으며, 실제로 필요한 명령어 예시와 설정 파일 수정 방법도 포함되어 있어 초보자도 쉽게 따라 할 수 있습니다.
짧은 주소란 무엇인가요?

짧은 주소(또는 SEO URL)는 페이지 주소를 간결하고 의미 있게 만들어주는 방식입니다. 예를 들어, 다음과 같은 URL을:
https://example.com/bbs/board.php?bo_table=news&wr_id=123
다음과 같이 바꿔주는 기능입니다:
https://example.com/news/123
짧은 주소는 다음과 같은 장점을 가집니다:
- ✅ 검색엔진에 더 친숙하여 SEO 향상
- ✅ 방문자에게 더 직관적이고 기억하기 쉬움
- ✅ SNS 공유 시 URL이 깔끔하게 표시됨
하지만 이 기능을 사용하려면 웹 서버가 URL 재작성 기능을 지원해야 하며, 그누보드에서도 .htaccess
설정을 통해 이를 활성화해야 합니다.
1. Rewrite 모듈 활성화
Apache에서는 URL 재작성 기능을 사용하기 위해 mod_rewrite
모듈을 활성화해야 합니다.
sudo a2enmod rewrite #rewrite 모듈 활성화
활성화 후 Apache를 재시작해야 합니다.
sudo systemctl restart apache2 #rewrite 모듈 활성화
2. Apache 설정 파일 수정
AllowOverride
옵션이 None
으로 되어 있으면 .htaccess
파일의 설정이 무시되므로 반드시 All
또는 FileInfo
로 변경해야 합니다.
sudo vi /etc/apache2/apache2.conf
다음 항목을 찾아 수정하세요:
<Directory /var/www/html>
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
.htaccess
가 위치한 디렉터리를 기준으로<Directory>
경로를 맞춰야 합니다.
추가로 아래 파일도 수정 가능합니다:
sudo vi /etc/apache2/sites-enabled/000-default.conf
3. .htaccess 파일 생성 및 설정 추가
.htaccess
파일이 없다면 다음 명령어로 새로 만들고, 그누보드에 최적화된 Rewrite 룰을 작성합니다:
sudo vi /var/www/html/.htaccess
✅ 그누보드 짧은 주소 설정용 .htaccess
예시
#### 그누보드5 rewrite BEGIN #####
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ - [L]
RewriteRule ^shop/list-([0-9a-z]+)$ shop/list.php?ca_id=$1&rewrite=1 [QSA,L]
RewriteRule ^shop/type-([0-9a-z]+)$ shop/listtype.php?type=$1&rewrite=1 [QSA,L]
RewriteRule ^shop/([0-9a-zA-Z_\-]+)$ shop/item.php?it_id=$1&rewrite=1 [QSA,L]
RewriteRule ^shop/([^/]+)/$ shop/item.php?it_seo_title=$1&rewrite=1 [QSA,L]
RewriteRule ^content/([0-9a-zA-Z_]+)$ bbs/content.php?co_id=$1&rewrite=1 [QSA,L]
RewriteRule ^content/([^/]+)/$ bbs/content.php?co_seo_title=$1&rewrite=1 [QSA,L]
RewriteRule ^rss/([0-9a-zA-Z_]+)$ bbs/rss.php?bo_table=$1 [QSA,L]
RewriteRule ^([0-9a-zA-Z_]+)$ bbs/board.php?bo_table=$1&rewrite=1 [QSA,L]
RewriteRule ^([0-9a-zA-Z_]+)/([^/]+)/$ bbs/board.php?bo_table=$1&wr_seo_title=$2&rewrite=1 [QSA,L]
RewriteRule ^([0-9a-zA-Z_]+)/write$ bbs/write.php?bo_table=$1&rewrite=1 [QSA,L]
RewriteRule ^([0-9a-zA-Z_]+)/([0-9]+)$ bbs/board.php?bo_table=$1&wr_id=$2&rewrite=1 [QSA,L]
</IfModule>
#### 그누보드5 rewrite END #####
작성 후 저장하고 다시 Apache를 재시작합니다:
sudo systemctl restart apache2
4. 설정 적용이 안 될 때 점검 포인트
.htaccess
파일이 실제로 웹 루트에 있는지 확인mod_rewrite
가 활성화되어 있는지 다시 한 번 확인- Apache 재시작 여부 확인
- 서버에 캐시된 설정이나
.htaccess
충돌 여부 확인 - 웹호스팅의 mod_rewrite 지원 여부 (일부 저가형 호스팅은 제한될 수 있음)
5. 요약 및 마무리
짧은 주소(SEO URL)는 그누보드 사이트의 검색 노출력을 높이는 데 매우 중요한 요소입니다. URL이 깔끔하고 키워드가 포함된 구조는 검색 엔진이 페이지를 이해하기 쉽도록 도와주고, 사용자 경험(UX) 측면에서도 신뢰도를 높입니다.
위 단계대로 설정을 확인하고 수정하면 대부분의 경우 짧은 주소 문제가 해결됩니다. 혹시 설정 후에도 적용되지 않는다면 웹호스팅의 mod_rewrite 지원 여부 또는 추가 보안 정책이 적용된 서버 환경도 점검해보시는 것이 좋습니다.
✅ 이 글이 도움이 되셨다면 공유해 주세요! 궁금한 점은 댓글로 남겨주시면 빠르게 답변 드리겠습니다 🙂
관련 글
2 thoughts on “그누보드 짧은 주소 적용 안되는 경우 해결방법”