텍스트큐브    숫자 주소문자 주소 두 가지 형식을 지원한다. 숫자 주소를 사용할 때의 가장 큰 잇점은 언제나 단 하나의 주소를 유지할 수 있다는 점이다. 그러나 주소만으로 문서의 내용을 파악하기 힘든 단점이 있다. 문자 주소를 사용하면 주소만으로 문서의 내용을 짐작할 수 있지만 이 역시 몇 가지 문제가 있다. 먼저 한글 주소를 사용하면 실제 같은 글에 대한 주소가 다음처럼 총 세가지가 되 버린다.

첫번째 주소는 UTF-8을 지원하지 않는 검색 엔진에서 블로그 주소를 참조할 때 사용하는 주소이다. 한글을 주소에 바로 사용할 수 없기 때문에 URL 인코딩을 이용해서 한글을 인코딩하기 때문에 주소만으로 내용을 파악할 수 없다. 또 다른 주소에 비해 주소가 상당히 길어진다. 에서 문자 주소를 사용하면서 따로 주소를 지정하지 않으면 다음    과 같은 검색 엔진에서는 첫번째 주소를 사용하게 된다.

두번째 주소는 UTF-8을 지원하는 검색 엔진에서 블로그 주소를 참조할 때 사용하는 주소이다. 구글    처럼 UTF-8을 지원하는 검색 엔진에서는 두번째 주소가 사용된다. 마지막 주소는 숫자 주소로 주소 표시를 설사 문자 주소로 해도 숫자 주소로도 접근할 수 있다. 따라서 주소에 한글을 사용하면 이 처럼 하나의 글에 대해 세개의 주소가 생기기 때문에 글에 대한 접근성 문제가 발생할 수 있다.

그러나 이런 문제가 있어도 문자 주소를 사용하는 이유는 문자 주소를 사용하는 것이 검색 엔진 최적화(SEO: Search Engine Optimization)에 더 유리하기 때문이다. 다만 문자 주소를 사용하며 한글 주소를 사용하면 URL 인코딩된 주소처럼 주소로 문서의 내용을 알 수 없고 검색 엔진 최적화에도 도움이 되지 못하는 주소가 만들어진다. 따라서 요즘은 글을 올리면서 주소를 영어로 따로 지정해서 올리고 있다.

그런데 문제는 과거에 작성된 글에서 발생한다. 블로그를 처음 운영할 때 사용한 는 문자 주소를 지정하지 않았다. 또 로 판올림한 뒤에도 태터툴즈 시절의 습관 때문에 그냥 숫자 주소를 사용했다. 숫자 주소를 사용하다가 문자 주소로 바꿨기 때문에 영문 주소를 사용하는 글도 있지만 주소를 수정하지 못해서 아직까지 제목을 주소로 사용하는 글도 있다.

위에서 예로든      MSI 정보 삭제 유틸리티도 마찬가지다. 그런데 최근에 조금 이상한 현상이 발생했다. 원래 URL 인코딩된 주소로 접근해도 페이지가 표시되고 UTF-8로된 주소로 접근해도 페이지가 표시되어야 한다. 그런데 URL 인코딩된 주소로 접근하면 그럼처럼 페이지를 찾을 수 없다는 메시지가 출력되었다.

URL 인코딩된 주소를 URL 디코딩해서 확인해 보면 주소가 틀린 것은 아니었다. 결국 다음 문서들을 추적한 뒤 그 원인을 찾을 수 있었다.

삽질기
  1. rewrite.php로 문자 주소는 interface/blog/entry.php 파일이 처리한다는 것을 확인.
  2. entry.php로 $suri['value'] 값에 문자 주소의 일부만 저장되며, suri값은 library/suri.php 파일이 처리한다는 것을 확인.
  3. suri.phprewrite.php로 $accessInfo['fullpath']에 경로가 잘못 저장되며, $accessInfo['fullpath']값은 library/config.php 파일이 처러한다는 것을 알 수 있었다.
  4. config.php 파일에서 Validator::validateArray($accessInfo, $basicIV);를 실행하면 $accessInfo['fullpath']값이 바뀐다는 것을 확인.
  5. Eolin.PHP.Core.phpvalidateArray에서 $value = UTF8::bring($value);iconv("EUC-KR", "UTF-7", $value)로 바꾸면 정상적으로 동작하는 것을 확인.
  6. UTF8::bring에 문제가 있는 것으로 판단, UTF8::bring을 확인. 문제의 원인이 서버 설정에 있다는 것을 확인.

UTF8::bring의 마지막 문장은 return @iconv((isset($encoding) ? $encoding : $service['encoding']), 'UTF-8', $str);로 끝난다. 똑 같이 iconv 함수를 사용하며 최종적으로 UTF-8로 변환하는 문장이다. 다만 소스 인코딩은 변수로 넘어온 인코딩($encoding)과 서비스 설정값($service['encoding'])) 중 하나를 사용한다는 것을 알 수 있다. 따라서 변수로 넘어온 인코딩이 없고 서버의 설정을 UTF-8로 설정했다면 UTF-8을 UTF-8로 바꾸게 된다. 그러나 원 소스 문자열은 EUC-KR이기 때문에 한글 부분이 날라가는 것이었다. 따라서 이 문제를 해결하는 방법은 아주 간단하다.

  1. 텍스트큐브 관리도구/서비스 관리/서버를 클릭한다.
  2. 인코딩UTF-8에서 EUC-KR로 바꾼다.

사실 서버 설정에서 이 항목이 의미하는 바를 정확히 몰랐다. 그 이유는 EUC-KR로 설정해도 웹 페이지는 UTF-8로 생성되었기 때문이다. 따라서 여기서 인코딩을 설정하는 것이 어떤 의미를 가지고 있는지 알지못했다. 이 인코딩 값이 다른 곳에서도 참조하는지는 모르겠지만 URL 인코딩된 주소(결과적으로 EUC-KR 주소)를 UTF-8 주소로 바꾸면서 이 값을 사용하기 때문에 발생한 문제였다.

관련 글타래
2008/12/20 10:53 2008/12/20 10:53
글쓴이
author image
운영체제의 모든 것을 운영하고 있는 IT 블로거. IT 블로거라는 이름은 현재 시국때문에 시사 블로거로 바뀐 상태다. 그러나 나는 아직도 시사와 사회에 관심이 많은 IT 블로거일 뿐이다. 컴퓨터, 운영체제, 시사, 가족, 여행, 맛집, 리뷰등과 살면서 느끼는 소소한 일상이 블로그의 주제이다. 왼쪽의 아이콘은 둘째 딸 다예가 그린 내 모습이다.
오늘의 이슈 다음에서 새롭게 서비스하고 있는 소셜픽입니다. OpenAPI로 구현한 것이 아니라 가끔 사라질 때도 있습니다. 또 10분에 한번 갱신하기 때문에 실제 소셜픽과 약간 차이가 있습니다.
  1. 1
    검색: 148,021 트윗: 799 댓글: 5,700
    홈플러스가 '고 노무현 대통령 사진 논란에 대한 사실을 설명 드립니다'라는 제목으로 홈페이지에 사과문을 게시했다. ↑ 홈플러스 사과문 전문 ↑ 인터넷 커뮤니티 캡처. 사과문에서 홈플러스 측은 "여러 사람들이 스마트TV를 시연하는 과정에서 해당
  2. 2
    검색: 105,419 트윗: 1,091 댓글: 5,376
    오전에도 국방부는 두 가지 가능성을 모두 거론했다. 국방부의 김민석 대변인은 20일 정례 브리핑에서 " 단거리 미사일 가능성, 그리고 그와 비슷한 탄도 궤적을 가진 대구경 로켓일 가능성이 있다. 대구경 로켓은 중국이나
  3. 3
    검색: 308,484 트윗: 1,060 댓글: 3,926
    민주당 김한길 대표가 19일 서울광장에서 열린 고 노무현 전 대통령 추모제에서 참석했다가 시민들에게 거친 욕설을 듣는 등 봉변 끝에 10여 분만에 행사장을 떠나야만 했다. 김 대표는 이날 오후 4시쯤 전병헌
  4. 4
    검색: 25,949 트윗: 954 댓글: 3,923
    걸그룹 시크릿 전효성이 '민주화' 단어를 부적절한 의미로 사용한 것에 대해 다시 한 번 공식 사과했다. 전효성은 20일 오후 자신의 트위터에 "얼마 전 경솔한 발언으로 심려를 끼쳐드려 정말 죄송합니다"라고 말문을 열었다.
  5. 5
    검색: 120,722 트윗: 547 댓글: 1,906
    중요하게 다가오는데 앞으로 실수만 없다면 종합순위 기록에서도 3위권 안에 드는 기록을 보여주지 않을까 싶습니다. 손연재 은메달 후프 곤봉, 민스크월드컵 손연재 멀티메달 가치가 중요한 이유 이날 민스크 월드컵 손연재 은메달 기록을 보면
  6. 6
    검색: 25,241 트윗: 675 댓글: 1,742 건설공사 재개가 예고된 하루 전날인 19일부터 경남 밀양시 부북면 위양리 위양마을과 대항리 평밭마을 주민들은 뜬눈으로 밤을 지새웠다. 주민들은 한전 쪽의 기습적인 진입을 막기 위해 마을 어귀에 만든 농성장에 모였다. 주민들은 비상연락망을 점검
  7. 7
    검색: 204,413 트윗: 1,090 댓글: 900 것이다. 수도검침원 김씨가 실종된 것은 5월9일 오후 5시쯤이다. 당시 김씨는 의성군 봉양면 안평2리에서 수도검침을 하던 중 연락이 두절됐다. 김씨의 남편은 아내가 귀가하지 않는데다 아무런 연락이 되지 않자 이를 이상하게 여겨 경찰에 실종신고
  8. 8
    검색: 22,437 트윗: 126 댓글: 1,530 이승기가 20일 오후 경기도 고양신 일산 MBC드림센터에서 열린 MBC 월화드라마 '구가의 서' 기자간담회 도중 유동근과 수지를 아우르는 입담으로 현장을 밝게 만들고 있다 제공 [스포츠서울닷컴 | 이다원
  9. 9
    검색: 297,137 트윗: 809 댓글: 671 보인다. 이번 로또 546회 1등 당첨자는 역대 로또 11년 동안 가장 많은 수를 기록했다. 일각에선 조작논란도 제기되고 있다. 로또 1등 당첨 확률은 814만 분의 1로 알려져 있다. 번개에 맞을 확률이라고도 불려진다. 그런데 어떻게
  10. 10
    검색: 2,399 트윗: 272 댓글: 1,132 이현호 선고유예 판결 폭행 혐의로 입건된 프로농구 전자랜드 이현호가 즉격심판 결과 선고유예 판결을 받았다. 이현호는 20일 서울 남부지방법원에서 즉결심판을 받았다. 즉결심판을 받은 시간은 10분 정도가 소요가 된 것으로 알려졌으며,
오늘의 글
인기있는 글
컴퓨터 팁&텍
트랙백 많은 글
조회수 많은 글 | 베오베
댓글 많은 글 | 베오베

Trackback

Trackback Address :: http://offree.net/trackback/2186

Facebook

Comments

  1. bluenlive 2008/12/20 12:51

    이런 글은... 음... 아무나 소통할 수 있는 수준의 글이 아닌 것 같습니다... 쿨럭.

    perm. |  mod/del. reply.
    • 도아 2008/12/21 13:33

      서버 설정만 EUC-KR로 바꾸면 된다는 글이니까요.

  2. 공상플러스 2008/12/20 12:55

    저도 잘 모르겠습니다.

    perm. |  mod/del. reply.
  3. 주성치 2008/12/20 14:51

    워드프레스에서는 카테고리 이름같은거 지정할때 "url친화적인 주소"(영어, 하이픈, 숫자)를 넣을 수 있게끔 되어있어서 좋더군요. "게임"카테고리라고 해도 주소는 블로그주소/game으로 하도록...

    SEO이슈는 글과 페이지별로 SEO를 해주는 플러그인이 처리 하구요

    perm. |  mod/del. reply.
    • 도아 2008/12/21 13:34

      텍큐도 가능합니다. 숫자로 표시할 수도 있고요. 다만 SEO는 플러그인만으로 처리하기는 힘든 부분입니다. 텍큐도 일부 SEO를 고려한 부분이 있기는 하지만요.

  4. zasfe 2008/12/20 21:01

    기존 테터버젼에서 사용한 글이 없어서인지 저같은 초보블로그에게는 조금 먼 이야기네요.
    다만 도아님처럼 설치형이시면서 이전부터 많은 글을 작성하셨던 분들에게는 다시금 생각해볼수 있는 계기가 될수도 있겠다는 생각이 듭니다.

    perm. |  mod/del. reply.
    • 도아 2008/12/21 13:35

      처음부터 영문 주소를 사용한 사람은 문제가 별로 없습니다. 숫자에서 문자로 바꾼 분들은 고민이 조금 되는 부분이죠.

  5. xacdo 2008/12/20 21:08

    저는 그냥 숫자 주소를 사용합니다. 내용만 좋다면 검색엔진에서 잘 찾아오겠죠.

    perm. |  mod/del. reply.
    • 도아 2008/12/21 13:36

      그런데 중요한 것은 SEO를 하면 더 잘 찾아옵니다. 그리고 태터툴즈 초기판은 원래 숫자만 되는 것 아닌가요? 저도 그 판에서는 숫자만 사용했습니다.

  6. 지하 2008/12/22 18:43

    조금 어려운 내용이지만 대략 알거는 같습니다. 그래서 전
    예전에 아예 주소를 숫자로 다시 바꿔버렸어요;
    (그랫더니 메타사이트에 글이 2중으로 수집되는 골치가
    생기긴 했었지만;;)

    perm. |  mod/del. reply.
    • 도아 2008/12/23 11:26

      숫자로 바꾸면 잇점이 있지만 SEO 측면에서는 역시 문자가 더 좋습니다.

쥐박쥐가 아니라면 소통하세요!!!

(옵션: 없으면 생략)

글을 올릴 때 [b], [i], [url], [img]와 같은 BBCode를 사용할 수 있습니다.