mod_rewrite 질문있습니다.
본문
그누보드는 아니고 따로 제작한 사이트입니다.
http://www.thewedd.com이라는 사이트입니다.
여기서 웨딩홀의 뷰페이지는
http://www.thewedd.com/hall/view.htm?w_code=xxx&~~~~~쭉 파라미터
이런식입니다.
제가 .htaccess에 RewriteRule ^hall/view/$ /hall/view.htm?w_code=$1
이렇게 추가했는데요....이러면 http://www.thewedd.com/hall/view.htm?w_code=xxx로 접속하면
http://www.thewedd.com/hall/view/xxx 이렇게 url이 표시되어야 되는거 아닌가요?
url이 변하질 않네요....수동으로 url을 http://www.thewedd.com/hall/view/xxx라고 타이핑하면
해당 페이지로 이동은 됩니다....
http://www.thewedd.com/hall/view.htm?w_code=xxx로 이동시키면 url이 http://www.thewedd.com/hall/view/xxx 요렇게 되도록 어떻게 하면 되나요?
답변 1
우측의 $1 에 해당하는 것을, 좌측에 () 로 표기해 주어야 합니다. 보통은 정규식이 들어갑니다.
좌측에서 '$'는 (정규식에서) '끝'을 의미합니다. (좌측의 '$' 와 우측의 '$' 가 의미가 다릅니다.)
RewriteCond %{REQUEST_FILENAME} !-f 는 실제 파일이 아닐 때,
RewriteCond %{REQUEST_FILENAME} !-d 는 실제 디렉토리가 아닐 때
를 뜻 합니다. 필요에 따라 제외하거나 수정하시면 됩니다.
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^/hall/view/(.*)$ /hall/view.htm?w_code=$1 [L,QSA]