내용은 PDF 파일로 대체합니다.


저작자 표시 비영리 변경 금지

댓글을 달아 주세요

비밀글 (Serect)
댓글 달기 (Submit)
  학교에 있는 서버에 홈페이지 작업을 하면서 원격접속을 많이 하게 되었다. 학교망에는 방화벽이 설치되어 있고 교육청에서 사설IP로는 방화벽 설정(특정포트 개방)을 지원해 주지 않기 때문에 어쩔 수 없이 다른 방법을 강구할 수 밖에 없었다.
  여러 가지 방법이 있지만 그 중에 한 가지는 서버로 사용되는 컴퓨터를 집에서 쓰는 공유기의 VPN 서버에 연결하여 Private Network으로 인식시킨 후 SSH로 접속하는 것이었다. VPN 서버를 구성하고 학교 서버에서 공유기의 VPN 서버에 접속에 성공하였고 SSH를 통해 학교의 서버에 접속할 수 있었다. 하지만 한 가지 문제가 있었는데 일정 시간(매우 짧은 시간이다. 약 5초 정도) 아무런 입력을 하지 않으면 다음에 어떤 내용을 입력하면 딜레이가 엄청나게 걸려서 원활한 작업을 할 수가 없었다. 그래서 이 방법으로는 도저히 작업이 불가능하다고 판단되어 컴퓨터 전체를 원격 조정하는 프로그램을 사용하게 되었는데 이 프로그램을 사용하다 보니 SSH에 전혀 딜레이 현상이 없어짐을 발견할 수 있었다.
  원격 접속 프로그램은 아무런 입력이 없어도 기본적으로 패킷을 전송하기 때문에 연결이 끊기지 않았을 것이라는 생각이 문득 들었다. 따라서 SSH로 접속을 하더라도 학교의 서버와 공유기의 VPN서버가 계속 해서 연결을 유지할 수 있다면 딜레이 현상을 없앨 수 있을 것 같았다. 최소의 연결을 계속 유지할 수 있는 가장 간단하고 쉬운 방법은 아마 ping일 것이다. 터미널에서 ping 명령을 background로 실행시켰다.


/* VPN에 접속한 서버의 사설IP에 background로 실행(&) */
ping 192.168.x.x &

실행 결과 SSH에서 딜레이 없이 작업을 할 수 있었다. 앞으로는 굳이 원격 접속 프로그램을 사용하지 않더라도 터미널 상에서 작업이 가능할 것 같다.


저작자 표시 비영리 변경 금지

댓글을 달아 주세요

비밀글 (Serect)
댓글 달기 (Submit)

설치과정

  • crossover 사이트에서 trial 버전을 다운 받는다.
  • bottle을 하나 만들고 .NET Framework 2.0을 설치한다.
  • 같은 bottle에 HWP2010을 설치한다.
  • 한글 설치과정 도중에 에러가 발생하지만 설치가 완료되고 나면 정상적으로 작동한다.

사용소감

  • 좀 더 써봐야겠지만 맥에서 윈도우용 프로그램을 바로 실행시키니 한결 편리하다. 무거운 vmware를 더이상 실행하지 않아도 되는 날이 오기를 바라며.
  • 잠시 써보았는데 아직 불안정한 것 같다. 실행속도도 많이 느리고 파일을 불러오다 에러가 발생하기도 하고 종료되기도 한다. 역시 한글과컴퓨터에서 맥용 한글을 Launch하는 수 밖에? 올 후반기에는 맥용 한글 뷰어가 출시될 예정이라니 기대해본다.


See Also



저작자 표시 비영리 변경 금지

댓글을 달아 주세요

비밀글 (Serect)
댓글 달기 (Submit)

텍스타일과의 첫만남

  오늘 우연히 클리앙의 새로운 소식 페이지에 들어갔다가 NHN에서 설치형 블로그 툴을 공개했다는 소식을 접하게 되었다. 'NHN에서 설치형 블로그 툴이라니!'라는 생각을 가지고 확인을 해 보았더니 XE를 기반으로 만든 블로그서비스였다. 블로그 툴의 이름은 텍스타일 Textyle(이하 텍스타일)이다. 가장 큰 특징을 꼽는다면 바로 '구조적 글쓰기를 위한 편집기'라고 할까. 백문이 불여일견. 직접 소개 동영상을 보자.

텍스타일 소개 동영상

출처 http://www.xpressengine.com/aboutTextyle

텍스타일의 또다른 기능들

  텍스타일에서는 기본적으로 BlogAPI를 사용하는 서비스에 발행이 가능하다. 즉, 텍스타일에서 글을 작성하면 이를 자동으로 기존에 사용하고 있는 텍스트큐브나 티스토리, 워드프레스 등의 서비스로 발행을 할 수 있다는 것이다. 또한 텍스타일에서는 미투데이로 블로그의 제목을 포스팅해주는 기능까지 갖추고 있다. 물론 요즘 뜨거운감자로 떠오른 트위터에도 새 글을 작성할 수 있다. NHN이 XE의 개발을 지원하고 미투데이를 인수하더니 서비스들이 결합하며 시너지효과를 내고 있는 것 같다.

간단한 사용소감

  먼저 짧지만 텍스타일을 통해 글을 써보니 상당히 편리하다는 생각이 든다. 사실 텍스타일에 있는 기능들은 전혀 새로운 것이 아니다. 제목을 입력하고 문단을 작성하고 링크를 걸고 목록을 만들고, 이미지나 동영상, 파일을 첨부하는 것들은 기존의 블로그에서도 모두 가능한 것들이다. 하지만 워드프로세서에서 글을 작성하듯 블로그 에디터에서 글을 써나가는 패러다임에서 벗어나 소제목이나 텍스트, 멀티미디어 등을 각각의 객체로 인식하고 자유롭게 순서를 변경하거나 첨부/삭제/수정이 가능하다는 것이 NHN이 표방하는 '구조적인 글쓰기'에 매우 적합하다는 생각이 든다. 나라디자인 블로그에서 얘기되었듯이 소제목을 넣는 기능을 통해 제목태그인가 마크업되기 때문에 검색엔진에 노출될 가능성이 높다는 점도 장점으로 꼽을만 하다.

  내가 티스토리를 사용하는 이유는 티스토리가 서비스형 블로그이기 때문에 계정을 따로 구입할 필요가 없고 업로드 용량의 제한이 없어 트래픽 걱정을 하지 않아도 되며 작성한 글의 백업/복구가 가능하다는 것인데 티스토리에서도 텍스타일의 이런 획기적인 방식이 도입되면 좋겠다는 생각을 해본다. 아니면 티스토리, 텍스트큐브닷컴과 마찬가지로 NHN에서도 텍스타일을 가지고 서비스형 블로그를 운영해 보는 것도 괜찮을 것 같다. NHN이라고 네이버 블로그만 있으라는 법이 있나!

  아직 0.9버전이고 안정화 및 기능 추가 작업이 진행될 예정이라니 기대를 갖고 유심히 지켜볼 생각이다. 확실히 글쓰기의 새로운 패러다임이 열렸다고 말하고 싶다. 글감보관 기능도 잘만 활용하면 상당히 유용할 것 같은데 북마클릿을 눌러도 제대로 작동하지 않는 경우가 있는 것 같다. 아무튼 간만에 기대되는 서비스를 발견했다!
저작자 표시 비영리 변경 금지

댓글을 달아 주세요

  1. Zery 2009/08/01 17:00

    감사히 읽었습니다!
    퍼갈 때 먼저 허락을 구하는 것이 맞지만; 시간이 제한되어 있는 군인인지라 -_ㅠ;
    CCL 보고 가져간 뒤에 이렇게 댓글 남깁니다ㅠ
    주소는 트랙백으로 남겼습니다.


    CCL대로 원작자 표시는 했습니다.

    즐거운 하루 되세요!

  2. 아크슈터 2009/10/26 15:50

    현재 텍스타일 기반 서비스형 블로그인 토트 블로그가 테스트중에 있습니다.
    참고하세요.

비밀글 (Serect)
댓글 달기 (Submit)
  미투데이 업로더를 0.3으로 업데이트 하면서 LIGHTWEIGHT 형식의 윈도우나 State 등을 활용해 UI를 개선하였다. 사실 0.2.x 버전의 업로더를 만들때만 하더라도 State라는 개념이 있는지조차 모르고 있었고 따라서 '프로그램 내에서 화면전환은 어떻게 할 수 있는지'가 나의 가장 큰 고민이었다. 특히 메신저에서 다른 사람이 접속하면 뜨는 작은 창처럼 알림기능을 하는 창을 만들고 싶었는데 인터넷에서 자료를 찾아보면 - 물론 대부분의 자료는 영어다. 한국에서는 아직도 AIR/Flex 관련 자료를 찾는 것이 쉽지 않다 - 대부분 액션스크립트를 이용해 Display Object를 일일이 Addchild 시켜주는 방식이어서 직관적인 설계를 하기가 힘들었다. 그래서 지난 버전에서는 결국 새 창 띄우는 것을 포기하고 Popup manager를 이용하는 것으로 만족했었다.

  하지만 얼마전 드디어 내가 원하던 방식, 즉 mxml component를 만들어 새창의 디자인을 한 후 뼈대 프로그램에서 투명한 창으로 띄울수 있는 방법을 찾게 되었다. 사실 이 글이 이미 2008년 7월에 쓰여졌기 때문에 내가 처음 업로더를 만들 때부터 존재했던 방법이었지만 프로그래밍 초보인 나로서는 생각할 수 없는 내용이었다. 당시에는 객체지향프로그래밍에 대한 개념조차 잘 서있지 않았기 때문에 mxml 파일 자체가 하나의 클래스라는 사실은 꿈에도 알지 못했다. 아무튼 mx:Window를 기반으로 투명한 창을 띄우는 방법은 다음과 같다.

먼저 mx:Window 기반의 새로운 mxml 컴포넌트를 만든 후 아래를 참조하여 창을 디자인 한다. 아래 소스에서는 chromeless라는 Style일을 적용하였지만 사실 가장 중요한 포인트는 showFlexChrome: false; 부분이다. 다른 스타일은 각자의 환경에 맞게 수정하면 되고 스타일 적용이 필요 없다면 showFlexChrome부분을 mx:Window 코드 뒷부분에 showFlexChrome="false" 와 같이 추가할 수도 있다.

  1. <mx:Window xmlns:mx="http://www.adobe.com/2006/mxml" width="200" height="75"
  2.     styleName="chromeless" layout="absolute" verticalAlign="middle"
  3.     horizontalAlign="center">
  4.     <mx:Style>
  5.         .chromeless
  6.         {
  7.             showFlexChrome: false;
  8.             background-image: "";
  9.             background-color: "";
  10.             padding: 0px;
  11.         }
  12.     </mx:Style>
  13.     <mx:Image source="@Embed('assets/notifier.png')" id="background" />
  14.     <mx:Label id="lbl" color="#ffffff" fontSize="20"
  15.         textAlign="center" top="25" bottom="25" right="0" left="0" />
  16. </mx:Window>

  뼈대가 되는 프로그램에서는 다음과 같이 새 창을 호출할 수 있다.
  1. public function createNewWindow() : void
  2. {
  3.     var win : NotificationWindow = new NotificationWindow();
  4.     win.systemChrome = NativeWindowSystemChrome.NONE;
  5.     win.type = NativeWindowType.LIGHTWEIGHT;
  6.     win.transparent = true;
  7.     win.open(true);
  8.          }
  위의 var win : NotificationWindow = new NotificationWindow(); 에서 NotificationWindow는 앞서 만들었던 컴포넌트(mxml)의 파일명이다. 따라서 이는 사용자가 만든 파일이름에 따라 수정되어야할 부분이다. 이를 통해 간단히 투명한 nativeWindow를 만들 수 있다.
저작자 표시 비영리 변경 금지

댓글을 달아 주세요

비밀글 (Serect)
댓글 달기 (Submit)
  iPod의 유저로서 한 가지 불편한 점은 아이팟에 음악이나 동영상 파일을 넣을 수는 있지만 아이팟에 저장된 미디어를 컴퓨터로는 저장할 수 없다는 것이다. 이를 간단히 해결할 수 있는 프로그램이 바로 i-FunBox이다. i-FunBox는 해킹 없이도 아이팟에서 파일을 내려 받는 것이 가능하다.(업로드는 불가능. 단, 해킹된 아이팟의 경우 업로드 및 다운로드가 모두 가능하다.) 또한 프로그램을 설치할 필요 없이 압축을 푼 후 실행하기만 하면 바로 사용할 수 있다. 한국어판은 한국 시각으로 2009년 5월 30일 릴리즈 되었다.[각주:1]

i-FunBox의 홈페이지(http://i-funbox.com)



  1. i-FunBox 한국어판은 필자가 번역하여 dev팀에 5월 21일에 보냈고 30일에 홈페이지에 등록되었다. [본문으로]
저작자 표시 비영리 변경 금지

댓글을 달아 주세요

  1. 아이로 2009/05/31 20:26

    ㅎㅎ 특히 mp3는 항상 사용하던 컴터에서만 동기화시키느라 조심조심했는데, 유용할 것 같네요~!

    • 엔하늘 2009/06/01 15:32

      네, 저도 덕분에 여기 저기서 업로드한 음악 파일들을 드이어 한 곳에 저장해 두었어요^^

  2. iPod Art 2009/06/08 12:55

    파일 매니저라고 생각하면 되나요?

  3. 겸 둥 2009/07/25 15:33

    너무감사드립니다..

    제가 이번에 컴퓨터를새로사서

    아이튠즈를 새로깔았거든요.. 아이팟에 있는 모든파일이 삭제될

    절체절명의 위기에 직면했는데(..ㅋㅋㅋㅋㅋ)
    진짜감사드려요

    이틀동안 밤새서 찾았는데 드디어 방법을 찾았습니다ㅠㅠ..감사드려요

    만수무강하실거에요ㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠ

  4. 김홍규 2009/10/01 22:43

    아직 사용은 안했지만, 데브팀과 도우면서 수고하십니다. ^^ 잘쓰겠습니다.

비밀글 (Serect)
댓글 달기 (Submit)
영문판 비스타 서비스팩2 설치

  아직 정식으로 출시되지는 않았지만 이미 MSDN에는 윈도우 비스타 sp2의 통합본 이미지 파일이 공개되었다. 아직 한글 비스타 sp2 통합본은 없는 관계로 영문판 비스타 sp2를 설치하였다. 처음에는 영문판을 설치한 후 한글 언어 팩을 설치할 생각이었는데 막상 영문 비스타를 설치하고 나니 MUI를 설치할 수 없다는 사실을 알게 되었다.(MUI는 Windows Vista Ultimate이나 Enterprise 버전에서만 사용가능 하다.)

Windows Vista Home Premium with Service Pack 2



vLite를 이용한 한글 언어팩 통합

  그래서 vLite를 이용해 기존의 영문 비스타 서비스팩2 파일에 한글 언어팩을 통합시켰다[각주:1]. 통합시키는 과정에서 다음과 같은 에러가 발생하였지만 재부팅한 후 계속 진행했더니 무사히 통합이 완료 되었다.(에러 발생후에는 마지막 작업 지점에서부터 이어서 통합이 이루어졌다.)

vLite 에러



통합된 한글 비스타 서비스팩2 설치

  통합된 파일은 DVD에 따로 담지 않고 외장 하드에 저장해 놓고 설치하는 방식을 이용했다. 기존의 Windows Vista DVD를 이용해 부팅을 한 후 지렁이가 기어갈 때 CTRL키를 누르고 있으면 바로 커맨드 프롬프트가 실행된다. snoopy님의 'DVD 없이 비스타 설치하기'에 따르면 이 방법을 이용할 경우 x:\sources 의 모든 파일을 설치 파일이 담겨 있는 하드디스크의 sources 폴더로 복사해야 한다고 하는데 이 과정 없이 바로 setup을 실행해도 아무런 문제 없이 설치가 완료 되었다.

설치 완료 된 한글 비스타 서비스팩2



Ultimate 설치 할 경우에는 vLite로 통합할 필요 없어

  Ultimate판에는 MUI를 지원하기 때문에 영문판 설치 후 제어판 - 국가 및 언어 설정에 가면 새로운 언어를 추가할 수 있다. 따라서 굳이 vLite를 이용해 한글 언어팩을 통합할 필요가 없다.

  1. 통합하는 방법은 이곳 참조. [본문으로]
저작자 표시 비영리 변경 금지

댓글을 달아 주세요

비밀글 (Serect)
댓글 달기 (Submit)
부족한 하드디스크 용량의 압박

  나는 줄곧 컴퓨터를 재설치하기 위해 ghost를 사용해 왔었다. 윈도우를 비롯한 여러 가지 프로그램들을 설치할 필요가 없기 때문이다. 예전 xp 같은 경우에는 5분에서 10분 정도면 말끔히 reimage가 될 정도였으니 시간이 절약되는 것은 두말할 필요가 없다.

  2년전 구입한 내 노트북은 삼성 제품이라 '삼성 복원 솔루션'이라는 것이 설치되어 있다. 시스템에 문제가 생길 경우 BIOS 상에서 복구 모드로 접속해 시스템을 완전히 공장 출하 상태로 복구할 수 있는 유용한(?) 기능이다. 원리는 고스트와 거의 같다고 보면 될 것 같다. 대신 이 복원 솔루션은 복원 이미지를 하드디스크의 숨겨진 파티션 속에 저장해 둔다. 따라서 80Gb인 내 하드는 그동안 이 복원 솔루션을 위해 10Gb 정도를 희생할 수 밖에 없었다. 처음 이 노트북은 출시될 때 xp를 담고 있었고 무료로 비스타 업그레이드가 가능한 제품이었다. 지금은 비스타를 쓰고 있으니 xp는 더 이상 필요 없지만 처음 비스타를 설치할 때만 하더라도 혹시나 하는 마음에 복원 솔루션을 삭제하지 않고 남겨두었다.

  사실 나는 나만의 복구 방법을 만들어 놓기 때문에 아마 평생 이 솔루션을 사용할 일이 없을 거란 생각이 들어서 복구 솔루션이 포함되어 있는 파티션을 통째로 고스트로 떠 보려고 시도했었지만 이 파티션은 인식 자체가 불가능했다. 또 이 솔루션을 삭제하고 나서 만일 다시 복구하려고 한다면 서비스센터를 방문해야 하고 일정 금액을 지불해야만 한다고 했다. 그래서 용량이 아쉽긴 하지만 그야 말로 just in case 복구 솔루션을 방치해 두고 있었다.

  그런데! 얼마 전부터 용량이 후달리기 시작했다. 사실 얼마 전이라기 보다는 노트북을 처음 사용했을 때부터 80Gb 라는 용량 자체가 부족할 수 밖에 없는 적은 크기였지만 노트북이기 때문에 대부분의 자료들은 데스크탑에 백업하는 식으로 사용해가면 되기 때문에 그럭저럭 버틸 수 있었다. 하지만 데스크탑을 꽁꽁 싸두고 노트북만 쓰다 보니 개인 자료들이 쌓이게 되고 영화나 드라마라도 몇 편 보게 되면 그야 말로 탐색기의 C드라이브는 빨간 불빛을 토해내며 업그레이드 혹은 외장하드 구입의 압박을 넣고 있었다.

피를 토하는 하드


  그래서 이제는 안 되겠다 싶어 복원 솔루션을 삭제하기로 결정했다. 삼성 복원 솔루션에는 I~III(그 이상의 버전이 있는지도 모르겠다)가 있는데 나는 초창기 버전이라 I이다. 버전별로 삭제 방법이 조금씩 다르다.


삼성 복원 솔루션 삭제하기

  • 복원 솔루션 II 이상
복원 솔루션 삭제 프로그램[각주:1]을 다운받고 실행한다.

  • 복원 솔루션 I
    1. BIOS 설정에 들어가 Advanced탭의 Deleted Recovery AreaEnabled로 변경
    2. CD-ROM의 부팅 우선순위를 최우선으로 설정
    3. 구매시 제공받은 시스템 소프트웨어 미디어 CD를 넣고 부팅한다.
    4. 복원 영역을 삭제한다.


삭제 된 복원 영역 포맷하기

  복원 솔루션 II 이상에서 사용가능한 제거 프로그램은 사용해 보지 못해서 삭제 후 저절로 파티션을 잡아주는 지 모르겠지만 복원 솔루션 I의 경우에는 파티션 삭제 후 윈도우에서 따로 포멧하는 과정을 거쳐야 사용을 할 수 있다.

  1. 시작 → 실행 → compmgmt.msc
  2. 저장소→디스크 관리에 들어가면 복원 솔루션 삭제로 인해 할당되어 있지 않은 파티션이 있음을 확인할 수 있다. 마우스 오른쪽 버튼을 클릭한 후 포맷하면 새로운 드라이브로 사용할 수 있다.


시스템 소프트웨어 미디어 CD

  이 CD는 원래 드라이버 및 시스템 유틸리티 등을 설치하기 위한 CD이다. 윈도우에서 이 CD를 넣어 보면 프로그램 폴더 이 외에는 아무 것도 보이지 않아서 절대로 부팅이 될 것 처럼 보이지 않지만 부트 영역에 파일들을 숨겨 놓았다. 이 CD를 분실한 경우에는 아래 iso 이미지를 다운 받아서 이미지 레코딩을 한 후 부팅을 해도 무방하다.



시스템 소프트웨어 미디어 CD의 알려진 문제

  널리 알려진 것은 아니고 필자만 알고 있는 사실인데 필자의 노트북에서 시스템 소프트웨어 미디어 CD를 넣고 부팅을 하면 한글을 사용할 수 있게 해주는 MSHBIOS 프로그램을 실행하는 과정에서 컴퓨터가 멈춰버린다. 이 때문에 starting windows 98... 이라는 메세지가 나올 때 shift + F8 키를 눌러 step-by-step 모드로 넘어간 후 mshbios를 실행하는 것을 건너 뛰는 것으로 문제를 해결했다. 물론 한글을 읽을 수 없었기 때문에 vmware에서 CD로 부팅을 해보는 수고를 해야만 했다. 결론은 한글이 보이지 않더라도 1을 선택하고 Y를 두번 선택하면 말끔히 복원 솔루션을 삭제할 수 있다.

  1. http://kr.samsungmobile.com/service/support/faq/faq.view.do?messageId=5945&isEngine=Y&cPage=1&sCate01=&sCate02=&sValue=%BA%B9%BF%F8%BC%D6%B7%E7%BC%C7%20%BB%E8%C1%A6 [본문으로]
저작자 표시 비영리 변경 금지

댓글을 달아 주세요

  1. 사용자 2009/08/06 13:26

    위 방법과 동일하게 했습니다.

    그런데 cd를 넣고 삭제를 눌럿는데

    부팅을 계속해도 윈도우 화면으로 가지 않습니다. 계속 검정화면 입니다.

    답변과 태클 부탁 바랍니다.

    • 그런경우는 2009/08/21 19:30

      윈도우 내의 부팅파일이 지워저서 그런겁니다.

      윈도우를 새로 깔아야해요..

      삼성A/S센터에 물어보니 간혹 복원솔루션 지울때 그런경우가 발생한다고 하더군요..

      혹시 X20시리즈 시스템소프트웨어CD있으시면 이미지파일로 만들어서 좀 주실수없나요?ㅠㅠ잃어버려서;;;

      526479012@hanmail.net로 주시면 ㄳ하겠네용~

  2. 이미지가 2009/08/21 14:35

    이미지가 잘못된것 같은데요;;;;;;

    이미지를 시디로 굽고 부팅해도 제대로 부팅이 안되네요;;;

    CD부팅이 안되고 그냥 윈도로 바로 ㄱㄱ씽하는군요;;;

    • 시스템소프트웨어CD 2009/08/21 19:33

      X20 시스템소프트웨어CD 이미지파일 만들 수 있으신 분 없나요?

      혹시 있으시면 526479012@hanmail.net으로 좀 보내주세요...ㅠㅠ;;;;

  3. 후.. 이미지파일 문의요 ㅠㅠ 2010/01/12 18:35

    위에분처럼 저도 알콜로 구웠는데 cd부팅이 불가능하네요..
    이미지파일 확인좀부탁드려요 ㅠㅠ

  4. 엔하늘님! 2010/05/23 11:55

    진짜 고마워요 99G였던게 111기가가 되지는 않앗지만 2개로 나누어졌어요 감사!

  5. 추가방법 2010/08/21 15:29

    삼성에 문의해봤는데요

    윈도우 CD를 가지고 있으면 recovery solution 이라는 파티션이 있을껀데

    그 파티션을 삭제해버리면 복원 솔루션이 완전 제거 됩니다

비밀글 (Serect)
댓글 달기 (Submit)
  얼마 전 와우웹 호스팅에서 계정을 구입했다. 초등교사를 위한 메타 블로그(http://lounge.luvda.com)를 운영하기 위함이었는데 나중에 학급 홈페이지 및 커뮤니티 사이트를 개설할 것도 염두에 두었기 때문에 xe도 설치하기로 결정했다. 제로보드4 이후로 제로보드는 사용해 본 적이 없어서 다소 낯설기는 했지만 설치에 큰 어려움은 없었다.

  그런데 설치 후 404 에러가 계속 발생했다. 영문을 몰라 몇 번이고 재설치를 해 보았지만 문제는 계속해서 발생했다. rewrite.php 파일을 찾을 수 없다는 메세지가 계속해서 출력되었다. 며칠동안 끌었던 이문제를 드디어 오늘 해결하게 되었다.

  문제는 설치에서 비롯되었다. xe 홈페이지에서 tar.gz 파일을 받은 후 계정에 설치하고 압축을 풀면 저절로 xe라는 폴더를 생성하고 그 안에 프로그램이 설치된다. 그런데 나는 '도메인/xe'보다는 '도메인'으로 바로 사용하고 싶었기 때문에 xe폴더 안에 풀어진 파일들을 모두 상위 폴더로 옮겨 놓았다. 하지만 숨겨진 파일인 .htaccess는 복사되지 않았는데 바로 이 때문에 계속해서 404에러가 발생했던 것이다.

  따라서 같은 문제로 고생하고 있는 사용자가 있다면 xe 폴더 안에 있는 .htaccess 파일을 상위 폴더로 복사해 줌으로써 간단히 해결할 수 있다.


.htaccess 내용
RewriteEngine On

# image...
RewriteRule ^(.+)/files/attach/images/(.*) ./files/attach/images/$2 [L]
RewriteRule ^(.+)/files/attach/menu_button/(.*) ./files/attach/menu_button/$2 [L]
RewriteRule ^(.+)/files/member_extra_info/(.*) ./files/member_extra_info/$2 [L]
RewriteRule ^(.+)/files/cache/(.*) ./files/cache/$2 [L]
RewriteRule ^(.+)/modules/(.*) ./modules/$2 [L]
RewriteRule ^(.+)/common/css/(.*) ./common/css/$2 [L]
RewriteRule ^(.+)/common/js/(.*) ./common/js/$2 [L]
RewriteRule ^(.+)/common/tpl/(.*) ./common/tpl/$2 [L]
RewriteRule ^(.+)/widgets/(.*) ./widgets/$2 [L]
RewriteRule ^(.+)/layouts/(.*) ./layouts/$2 [L]
RewriteRule ^(.+)/addons/(.*) ./addons/$2 [L]

# page
RewriteRule ^([a-zA-Z0-9_]+)/([[:digit:]]+)page$ ./index.php?mid=$1&page=$2 [L]

# total rss
RewriteRule ^rss/([[:digit:]]+){0,14}/([[:digit:]]+){0,14}/([[:digit:]]+)$ ./index.php?module=rss&act=rss&start_date=$1&end_date=$2&page=$3 [L]
RewriteRule ^rss/([[:digit:]]+)$ ./index.php?module=rss&act=rss&page=$1 [L]
RewriteRule ^rss$ ./index.php?module=rss&act=rss [L]
RewriteRule ^atom/([[:digit:]]+){0,14}/([[:digit:]]+){0,14}/([[:digit:]]+)$ ./index.php?module=rss&act=atom&start_date=$1&end_date=$2&page=$3 [L]
RewriteRule ^atom/([[:digit:]]+)$ ./index.php?module=rss&act=atom&page=$1 [L]
RewriteRule ^atom$ ./index.php?module=rss&act=atom [L]

# administrator page
RewriteRule ^admin/?$ ./index.php?module=admin [L]

# mid + act
RewriteRule ^([a-zA-Z0-9_]+)/api$ ./index.php?mid=$1&act=api [L]

# document permanent link
RewriteRule ^([[:digit:]]+)$ ./index.php?document_srl=$1 [L]

# document + act link
RewriteRule ^([[:digit:]]+)/([a-zA-Z0-9_]+)$ ./index.php?document_srl=$1&act=$2 [L]

# document + key + act link
RewriteRule ^([[:digit:]]+)/([a-zA-Z0-9_]+)/([a-zA-Z0-9_]+)$ ./index.php?document_srl=$1&act=$3&key=$2 [L]

# mid + document link
RewriteRule ^([a-zA-Z0-9_]+)/([[:digit:]]+)$ ./index.php?mid=$1&document_srl=$2 [L]

# mid + act link
RewriteRule ^([a-zA-Z0-9_]+)/([a-zA-Z0-9_]+)$ ./index.php?mid=$1&act=$2 [L]

# mid + page link
RewriteRule ^([a-zA-Z0-9_]+)/page/([[:digit:]]+)$ ./index.php?mid=$1&page=$2 [L]

# mid + entry title
RewriteRule ^([a-zA-Z0-9_]+)/entry/(.+)$ ./index.php?mid=$1&entry=$2 [L]

# mid + category link
RewriteRule ^([a-zA-Z0-9_]+)/category/([[:digit:]]+)$ ./index.php?mid=$1&category=$2 [L]

# mid + act + document_Srl
RewriteRule ^([a-zA-Z0-9_]+)/([a-zA-Z])([a-zA-Z0-9_]+)/([[:digit:]]+)$ ./index.php?mid=$1&document_srl=$4&act=$2$3 [L]

# mid + document_Srl + page
RewriteRule ^([a-zA-Z0-9_]+)/([[:digit:]]+)/page/([[:digit:]]+)$ ./index.php?mid=$1&document_srl=$2&page=$3 [L]

# mid + category + page
RewriteRule ^([a-zA-Z0-9_]+)/category/([[:digit:]]+)/page/([[:digit:]]+)$ ./index.php?mid=$1&category=$2&page=$3 [L]

# mid + search target regdate (year+month)
RewriteRule ^([a-zA-Z0-9_]+)/([[:digit:]]+)/([[:digit:]]+)$ ./index.php?mid=$1&search_target=regdate&search_keyword=$2$3 [L]

# mid + search target regdate (year+month+day)
RewriteRule ^([a-zA-Z0-9_]+)/([[:digit:]]+)/([[:digit:]]+)/([[:digit:]]+)$ ./index.php?mid=$1&search_target=regdate&search_keyword=$2$3$4 [L]

# mid + search target tag
RewriteRule ^([a-zA-Z0-9_]+)/tag/(.*)$ ./index.php?mid=$1&search_target=tag&search_keyword=$2 [L]

# mid + search target writer
RewriteRule ^([a-zA-Z0-9_]+)/writer/(.*)$ ./index.php?mid=$1&search_target=nick_name&search_keyword=$2 [L]

# mid + document_Srl + page + act
RewriteRule ^([a-zA-Z0-9_]+)/([a-zA-Z0-9_]+)/([[:digit:]]+)/page/([[:digit:]]+)$ ./index.php?mid=$1&document_srl=$3&page=$4&act=$2 [L]

# module link
RewriteRule ^([a-zA-Z0-9_]+)(/){0,1}$ ./index.php?mid=$1 [L]


저작자 표시 비영리 변경 금지

댓글을 달아 주세요

비밀글 (Serect)
댓글 달기 (Submit)
  얼마 전 초등학교 선생님들도 블로그를 꾀 이용하고 있음을 알게 된 이후 RSS를 구글리더에 등록해 구독하고 있었다. 문득 혼자서 이 RSS를 볼 것이 아니라 다함께 공유하면 더 좋겠다는 생각이 들었다. 그러기 위해서는 메타 블로그 사이트를 구축해야 하는데 예전에 설치형 메타 블로그가 제작되었다는 사실이 순간 떠올라 인터넷으로 검색을 해 보았다. 당시 발표된 것이 '날개'라는 툴이었는데 이를 수정/보완 해서 발표한 것이 오늘 소개할 블로그라운지이다.

  블로그라운지는 다음세대제단에서 운영하는 비영리단체를 위한 IT 지원 센터 ITcanus에서 발표하였다. 아직 개발 초기 단계라 기능면에서 부족한 점도 있지만 언젠가는 훌륭한 프로그램이 되리라 생각한다. 하지만 사용자 층이 많지 않아서인지 스킨이나 플러그인이 전무한 상태이다. 현재 기본 스킨을 수정해서 사용하고 있는데 좀더 틀이 잡히면 공개할 생각이다.


저작자 표시 비영리 변경 금지

댓글을 달아 주세요

비밀글 (Serect)
댓글 달기 (Submit)