URL에 모드-리라이트(mod_rewrite) 를 적용했습니다. 이 것은 URL에 재작성 규칙을 설정하여 보다 직관적이고 접근성이 좋은 모양으로 변형하여 라우팅합니다. 예를들어 "firejune.com/index.php?pl=1053" 과같은 지저분한 URL을 "firejune.com/1053"과 같이 쓸수 있게 해 줍니다. 자세한 사용법은 apache.org의 doc을 참조하시기 바랍니다.

이제 태터툴즈 클래식에서도 멋진 URL을 사용할 수 있게 되었습니다. 주요 URL만 적용했으며, 조금 더 복잡하고 조잡한 페이징이나 카테고리 등은 집어 치웠습니다. 대부분 정규식과 비슷한 문법으로 처리되기 때문에 꽤나 긴 삽질이 필요하더군요. 이곳에 적용한 .htaccess 파일의 일부분을 공개합니다.(이상한 곳이 있으면 지적해 주세요) 작업시 주의해야 할 점은 mod_rewrite가 모든 서버환경에 기본으로 채택되어 있지 않기 때문에 먼저 가능여부를 알아야 합니다. 둘째로 종전의 URL방식으로 접근 했을때 차단되어서는 안되기 때문에 하위 호환성을 유지해야 한다는 점입니다.

RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^(.+[^/])$ $1/ [L]
RewriteRule ^$ index.php [L]
RewriteRule ^index\.html$ / [L]

RewriteRule ^(images|medias)/(.*)$ public/$1/$2 [L]
RewriteRule ^(.*)favicon\.ico$ public/favicon.ico [L]
RewriteRule ^(.*)index\.gif$ public/index.gif [L]
RewriteRule ^(.*)sound-config\.xml$ public/sound-config\.xml [L]

RewriteRule ^(([0-9]+)|([0-9]+)&(.*))$ index.php?pl=$1 [L]
RewriteRule ^tag/(.*)$ index.php?stag=$1 [L]
RewriteRule ^page/(.+)$ index.php?page=$1 [L]
RewriteRule ^search/(.*)$ index.php?stext=$1 [L]
RewriteRule ^trackback/(.+)$ rserver.php?mode=tb&sl=$1 [L]
RewriteRule ^archive/(([0-9]+)|([0-9]+)&(.+))$ index.php?setdate=$1&$2 [L]
RewriteRule ^entries/(.+)$ index.php?ct1=$1 [L]
RewriteRule ^guestbook/(.+)$ index.php?md=guest&$1 [L]
RewriteRule ^tags/([0-9]+)$ index.php?md=tag&sort=$1 [L]

RewriteRule ^rss index.xml [L]
RewriteRule ^entries index.php?page=1&ct1=-1 [L]
RewriteRule ^projects index.php?stag=프로젝트 [L]
RewriteRule ^photos index.php?md=photo [L]
RewriteRule ^tags index.php?md=tag [L]
RewriteRule ^guestbook index.php?md=guest [L]
RewriteRule ^profile index.php?pl=777 [L]

Comments

Got something to add? You can just leave a comment.

Your Reaction Time!

avatar

captcha