rewriterule 정규식 질문드려요

rewriterule 정규식 질문드려요

QA

rewriterule 정규식 질문드려요

본문

현재 나리야 빌더 사용중이구요.

나리야는 기본적으로 .htaccess 파일이 셋팅이 되있더라구요.

 

근데 적용안되는 url이 있어서 수정을 하는데 계속 404 오류가 나와서 질문드립니다.

기존 파일에서


#### 그누보드5 rewrite BEGIN #####
<IfModule mod_rewrite.c>
-----생략--------
</IfModule>
#### 그누보드5 rewrite END #####

 

RewriteRule ^/areasearch/([^/]+)/([^/]+)$ /areasearch?sfl=$1&stx=$2 [QSA,L]

정규식 추가해서 수정했습니다. 최종 .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]
RewriteRule ^/areasearch/([^/]+)/([^/]+)$ /areasearch?sfl=$1&stx=$2 [QSA,L]
</IfModule>
#### 그누보드5 rewrite END #####

 

제 의도는 https://도메인/areasearch?sfl=wr_7&stx=apple

이 url을 간략하게 https://도메인/areasearch/wr_7/apple

이런식으로 나오게 할려고 한건데 이 주소로 들어가면 404오류가 나오네요;; 뭐가 문제일까요?

이 질문에 댓글 쓰기 :

답변 2

areasearch.php가 어디에 있나요?

areasearch가 게시판 id(bo_table)이라면
위치가 잘못 되었습니다.

RewriteRule ^rss/([0-9a-zA-Z_]+)$  bbs/rss.php?bo_table=$1        [QSA,L]
RewriteRule ^/areasearch/([^/]+)/([^/]+)$ /bbs/board.php?bo_table=areasearch&sfl=$1&stx=$2 [QSA,L]
RewriteRule ^([0-9a-zA-Z_]+)$  bbs/board.php?bo_table=$1&rewrite=1      [QSA,L]
...

이런 식이 되어야 할 겁니다.

다른 것을 보면 shop, content, rss 등 앞에 /가 없네요. /를 아래처럼 빼고 해 보세요

 



RewriteRule ^areasearch/([^/]+)/([^/]+)$ areasearch?sfl=$1&stx=$2 [QSA,L]

답변을 작성하시기 전에 로그인 해주세요.
전체 31
QA 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT