사이트 / 게시판 url 질문입니다. 채택완료
안녕하세요 게시판 url을 변경하고 싶은데 어떻게 해야 될까요 ?
지금은 예로
https://asdffsfs.com/bbs/board.php?bo_table=free 이렇게 나오는데
이걸
https://asdffsfs.com/bbs/free 이렇게 바꾸고 싶습니다
글고 이렇게 바꾸면 구글 검색에 더 노출이 많이 될까요 ?
답변 2개
해당 URL을 /bbs/free 형태로 변경하려면 RewriteRule을 활용하여,
기존 bo_table=free와 같은 GET 파라미터 방식을 직관적인 URL 구조로 변환할 수 있음.
Apache의 경우 예로 하자면, mod_rewrite가 활성화되어 있어야 하며,
.htaccess 파일을 사용하여 요청을 적절히 리다이렉트 함.
*Apache를 사용한다면 .htaccess를 수정하여 RewriteRule을 적용 - Apache 재시작
RewriteEngine On
RewriteBase /
# 짧은 URL을 board.php?bo_table=값 형식으로 변환
RewriteRule ^bbs/([a-zA-Z0-9_-]+)$ /bbs/board.php?bo_table=$1 [L,QSA]
*Nginx를 사용한다면 nginx.conf 또는 해당 사이트 설정 파일에 RewriteRule 설정 추가
- 서버 블록(server {}) 내부에 "URL RewriteRule"을 추가, nginx_구성_테스트 > 재시작.
location /bbs/ {
rewrite ^/bbs/([a-zA-Z0-9_-]+)$ /bbs/board.php?bo_table=$1 last;
}
- 위의 "URL RewriteRule"을 추가한 예시 : https://5610.glitter.kr/bbs/free
- - 그누_최신_버전(5.6.10) 관리자 페이지 설정과 무관하게 서버 설정을 적용한 예시 - -
*서버 설정 변경 불가면, PHP 코드에서 $_SERVER['REQUEST_URI']을 분석하여 직접 변환.
- 인덱스에서 $_SERVER['REQUEST_URI']를 강제적으로 bo_table 매핑하는 방식을 사용.
<?php
$request_uri = parse_url($_SERVER['REQUEST_URI'], PHP_URL_PATH);
if (preg_match("#^/bbs/([a-zA-Z0-9_-]+)$#", $request_uri, $matches)) {
$_GET['bo_table'] = $matches[1];
// 기존 GET 파라미터 유지 (ex: ?page=1 같은 값)
if (!empty($_SERVER['QUERY_STRING'])) {
parse_str($_SERVER['QUERY_STRING'], $query_params);
$_GET = array_merge($_GET, $query_params);
}
// 보드 파일을 안전하게 호출
$board_path = __DIR__ . "/bbs/board.php";
if (file_exists($board_path)) {
include $board_path;
exit;
} else {
header("HTTP/1.0 404 Not Found");
echo "페이지를 찾을 수 없습니다.";
exit;
}
}
?>
※ """ 글고 이렇게 바꾸면 구글 검색에 더 노출이 많이 될까요 ? """, 이 내용을 검색해 보니.
네~ .
짧은 URL "https://asdffsfs.com/bbs/free" 사용이 검색 엔진 최적화(SEO)에 유리하답니다.
댓글을 작성하려면 로그인이 필요합니다.
답변에 대한 댓글 1개
댓글을 작성하려면 로그인이 필요합니다.
답변을 작성하려면 로그인이 필요합니다.
로그인