음. 제가 좀 늦게 봤군요.

1. mod_rewrite 는 정상 동작합니다. 원래 되던 서버였거든요.

2. ~/public_html/lb ~/public_html/la 식으로 구분되어 있습니다.
SElinux에서 public_html 외의 디렉토리를 html 루트로 설정하니까 알 수 없는 이상한 에러 메세지가 남더군요.

3. 잘 나옵니다.
HTTP_HOST  blog.xxx.net 
SERVER_NAME  blog.xxx.net 

xxx.net 에다 이 테스트 파일 넣어서 보면 xxx.net 으로 잘 나오구요.

음. 그럴 리는 없습니다.
왜냐하면 제가 세팅한 서버거든요.
DNS에서만 blog.xxx.yyy 로 가도록 하는 세팅은 모릅니다. (-_-;;)

blog.xxx.yyy 와 xxx.yyy 가 동일한 IP를 갖도록 되어 있습니다.
apache의 virtualhost 세팅을 통해서 xxx.yyy 와 blog.-- 가 다르게 보이도록 세팅해 둔 상태이구요.

안녕하세요.

어쩌다 보니 rewrite 모듈 없이 textcube를 쓰게 되었는데요.
포스트 하나만 단독으로 보는 모드가 제대로 동작하지 않습니다.

포스트의 제목을 누르게 되면 포스트 하나만 보는 주소로 가지 않습니까?
그걸 클릭하면 그냥 초기 화면이 나와 버립니다.

저는 문자로 된 주소가 싫어서, 숫자로 된 주소를 사용하고 있습니다.

그럼...


ps...
.htaccess 와 config.php 파일을 지우고 setup.php 를 실행해서 재설정하면 되는 문제였군요.
그런데 제가 사용하는 도메인이 blog.xxx.yyy 인데, 최종적으로 생성되는 config.php 를 살펴보니까 xxx.yyy 만 들어 있습니다. 이것도 역시 버그인거 같은데요.


ps2....
config.php 는 지우고, .htaccess를 안 지운 상태에서 setup.php 를 실행하니까,
"Click to setup." 이라는 이상한 화면이 나오던데요. 여기에 걸린 링크를 살펴보니, 아래와 같았습니다.
http://blog.xxx.yyy/tc/rewrite.php/setup.php/setup.php
이걸 클릭해도 원래의 setup.php 로 되돌아가지는 않는군요. 이것도 역시 버그 같습니다.

안녕하세요.

1.7.6 을 사용하고 있고, 실수로 .htaccess 파일을 지웠더니
rewrite 모듈 없이 사용하는 모드로 자동 전환되네요.
특별히 문제가 없는 것 같아서 없이 사용하고 있는 중입니다.
그런데 오늘 문제를 하나 발견하였습니다.

관리자 페이지에서 글 목록이나 댓글 목록을 볼때 페이지 하단의
페이지 번호에 걸린 링크가 잘못 치환 되는군요.

예를 들어 [2] 페이지로 가는 링크가 아래와 같이 잘못 걸립니다.
잘못 치환 되는 예: http://yyy.net/tc/%3F/owner/entry?page= … isibility=
정상 작동하는 예: http://yyy.net/tc/?/owner/entry?page=2& … isibility=

tc 다음에 있는 ? 가 치환되어 버려서 정상적으로 동작하지 않습니다.

그럼..


ps...
16:05 분 현재 이 포럼에 글 올리면서 그림 파일 하나 올릴려고 했더니
모종의 에러가 뜨면서 거부하네요. 그림 파일의 크기는 png 포맷으로 82k 였습니다.

에러 메세지 첨부합니다.
Error: Unable to move file from: /tmp/phpQTlR9a to /var/www/forum.tattersite.com/ko/attachments/a8917f3a3c4a8cfae0171297424e25d3/8b80f0b1a8b87469c49484c032a485ba.attach.

안녕하세요.

댓글에 댓글을 다는 경우, 작은 창을 띄워서 입력을 받게 됩니다. 하지만 일부 브라우저에서 그것의 위치와 크기가 적당하지 않아 불편하네요.

텍스트 큐브 1.7.x 들어서 모든 버전에서 발생하는 문제인듯. 스킨은 default 스킨입니다.
그 이전 버전은 기억 나지 않습니다.

아래는 구글 크롬에서 뜨는 reply 창입니다. 보다시피 너무 조그만해서 직접 resize하지 않고서는 쓰지 못합니다.
http://laphir.googlepages.com/textcube_chrome_reply.gif

아래는 maxthon 이라는 IE 기반의 탭브라우저에서 뜨는 reply 창입니다. 입력 창 크기는 main window 크기를 따라가기 때문에 편하게 입력할 수 있습니다만, "보내기" 단추가 없습니다 ! 아 물론 저는 tab으로 focus 이동 후에 enter를 치기 때문에 별 문제 안 됩니다만. 이 현상은 입력 dialog를 move 하는 문제 때문에 발생하는 것 같습니다.
http://laphir.googlepages.com/textcube_maxthon_reply.gif

크기랑 위치 좀 조정해주세요.
maxthon의 경우에는 user agent 보고 위치 이동 명령을 피해가야 할 듯 합니다. 프로그램 다운로드는 http://maxthon.com 에서 할 수 있습니다.

그럼..

gmail로 메일을 드렸는데,

Technical details of permanent failure:
Google tried to deliver your message, but it was rejected by the recipient domain. We recommend contacting the other email provider for further information about the cause of this error. The error that the other server returned was: 550 550 5.1.1 <콘텍트 @ 니들웍스 옭>... User unknown (state 14).

라는데요?

아니오. 그것으로는 구글 크롬에서도 안 되는 이유가 설명이 안 됩니다.

제가 생각하고 있는 가능성은 다음과 같습니다.
1. 서버 설정 혹은 서버 환경 때문에 발생한다.
2. 학교 게이트웨이에서 HTTP 프로토콜을 분석해서 이상하다 싶으면 그냥 차단해버린다.

제가 서버 계정 하나 만들어 드릴테니, 직접 살펴 보시겠습니까?
저는 아무래도 2번인 것 같습니다.

<object></object> 만 넣고 테스트해본 결과입니다.
겉보기에는 문제 없는거 같은데요.

파이어 폭스3:
visibility=0&starred=0&title=zz&permalink=&content=%3Cobject%3E%3C%2Fobject%3E&contentFormatter=ttml&contentEditor=modern&published=1&category=0&location=%2F&tag=&acceptComment=1&acceptTrackback=1

IE 6.0:
첨부 파일 참고.
겉보기에는 위와 똑같은 문자열 같은데요. 파폭은 저장이 되고, IE는 저장이 안 됩니다.

이렇게 되면, 서버에서 받는 쪽이 문제이지 않을까 싶어서 좀 더 디버깅을 했습니다.
php 나 textcube에 어떤 디버그툴이 있는지 몰라, error_log 함수로 의심 가는 부분에 박아서 로그 확인하는 방법을 썼습니다.

처음에 언급했던, config.php 에서 header 404 를 리턴해버리게 되는 원인인 Validator::validate()가 실패하는 이유를 찾아봤습니다. 여기저기 지웠다 뺐다해서 줄번호가 좀 다를 수도 있는데, 450 번째 줄 근처인 것 같군요. 

                if (array_key_exists(3, $rule))
                    $array[$key] = $rule[3];
                else if (array_key_exists('default', $rule))
                    $array[$key] = $rule['default'];
                else if ((!isset($rule[4]) || $rule[4]) && (!isset($rule['mandatory']) || $rule['mandatory']))
                {
                    error_log( "$key, $rule[0] missing!!" );
                    return false;
                }

에러 로그를 위처럼 삽입했을 때, 서버 에러 로그에는 다음과 같이 남았습니다. 첫줄이 저 error_log에 의해서 남겨진 기록이고, 그 아래부분은 config.php에서 $IV['POST'] 변수에 무슨 값이 들어 있나 확인하기 위해 추가로 출력해본 겁니다.

visibility, int missing!!

visibility: int,0,3
starred: int,0,2
category: int,0
title: string
content: string
contentFormatter: string
contentEditor: string
permalink: string,
location: string,/
tag: string,
acceptComment: Array,0
acceptTrackback: Array,0
published: int,0,1

자, 이제 뭘 해야할까요?

증상:
HTML 편집 모드에서 <object></object> 만 써서 글을 등록하는 경우 - 기존 글을 편집하는 경우도 포함 - "저장할 수 없었습니다" 와 같은 에러메세지가 발생함.

이 문제는 WantU 씨가 언급한 http://forum.tattersite.com/ko/viewtopic.php?id=6611 문제와 같습니다.


WantU씨와 같은 서버를 사용하고 있고, 제가 서버 관리자라서 도대체 뭐가 문제인지 서버 로그를 뒤졌습니다. 일단 apache의 access log에는 다음과 같이 기록이 남았습니다.

221.139.**.** - - [18/Sep/2008:22:31:01 +0900] "POST /owner/entry/finish/992?__T__=1221744638015 HTTP/1.1" 404 - "http://blog.laphir.net/owner/entry/edit/992" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322; .NET CLR 2.0.50727; MAXTHON 2.0)"

포스트를 올릴 때는 HTTP response가 200이지만, 저 문제가 발생하는 경우에는 404 로 뜹니다.

텍스트 큐브 소스 중에서 404를 return 하는 곳이 어디 있나 전부 확인해서 어느 놈이 문제인가 확인했는데, 다음의 코드가 문제였습니다.

lib/config.php:         header('HTTP/1.1 404 Not Found');

// Basic POST/GET variable validation.
if (isset($IV)) {
    if (!Validator::validate($IV)) {
        header('HTTP/1.1 404 Not Found');
        exit;
    }
}

post할 때 key-value 페어에서 뭔가 잘못 보내지는 듯 하네요.


클라이언트: IE 6.0 with WindowsXP sp3 한글판. Maxthon 2.0 을 깔아서 쓰고 있음.
  user-agent 문자열은 위의 서버 로그를 보시면 됩니다.

서버: fedora core 8
  PHP 5.2.6 (cli) (built: May  8 2008 08:53:44)
  Zend Engine v2.2.0, Copyright (c) 1998-2008 Zend Technologies
  httpd-2.2.9-1.fc8
  mysql  Ver 14.12 Distrib 5.0.45, for redhat-linux-gnu (i386) using readline 5.0

이렇게 사용 중입니다.

텍스트 큐브 버전은 1.7.4 : Risoluto 및 1.7.6 Release Candidate 1 입니다.
둘 다 동일한 증상이 있네요.
인터넷 캐쉬 혹은 cookie 문제인가 싶어 모두 지우고 새로 해봐도 같은 증상입니다.
구글 크롬에서도 같은 증상입니다.
파폭3은 잘 되네요. -_-;;;

자 이 놈을 어찌해야 할까요?

1. 증상:
youtube 동영상 중 아무거나 embed 하면 항상 발생.
동영상을 삽입하기 위한 object 태그 위나 아래에 한글 텍스트를 넣거나 빼도 항상 발생합니다.

2. 관련 서버 로그:

221.139.**.** - - [18/Sep/2008:22:31:01 +0900] "POST /owner/entry/finish/992?__T__=1221744638015 HTTP/1.1" 404 - "http://blog.laphir.net/owner/entry/edit/992" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322; .NET CLR 2.0.50727; MAXTHON 2.0)"

위 서버 로그는 "저장하지 못했습니다" 에러가 발생하는 경우의 서버 http 로그 입니다.

위의 글 같은 경우는 992 번 글을 미리 저장한 후에 편집하는 것이라서

POST /owner/entry/finish/992?

가 되었습니다만, 새로 작성하는 글의 경우에는

POST /owner/entry/finish/?

로 나타납니다.

apache 에러 로그에는 특별한 사항이 없습니다.

3. 서버 스펙:
PC 서버. 적당한 dual 코어에 2G 램.
fedora 9
php 5.2.6

4. 기타 사항
이 문제를 먼저 보고한 WantU 씨와 동일한 서버임.

1.7.4 에서 댓글을 다음과 같은 내용으로 로그인하지 않은 상태에서 쓰면 "귀하는 차단 되었습니다"라고 나옵니다.

1. 배는 세금 안내나??? 배도 소유세니 있을텐데.

댓글의 첫글자가 한글이 아니면 무조건 뜨는거 같은데, 무슨 이유로 차단하는건가요?

텍스트큐브 1.7.4 에서 공개되지 않은 글의 댓글이 검색됩니다.

1.7.5 에서도 그런지는 확인해보지 않았는데, 버그 패치 목록에 관련 사항이 없는거 같아서 보고합니다.


실험: http://blog.laphir.net/search/안경
검색 결과를 누지르면 존재하지 않는 글이라고 뜹니다.

원래는 다 공개되어 있었는데, 최근에 robots.txt 관련한 문제로 구글에 털려서 과거글은 모두 비공개로 바꿨습니다.

ps..
이런 글은 "질문 답변" 게시판에 올려야 하나요? 아니면 여기가 맞나요?
올 때마다 헷갈림.

http://forum.tattersite.com/ko/viewtopic.php?id=5335 에 개요가 나와 있군요.

제 .htaccess 를 아래와 같이 바꾸었습니다. robots.txt 에 대해서는 rule 적용을 제외합니다.

(전략)
RewriteEngine On
RewriteBase /
RewriteRule ^robots\.txt - [L]
(후략)

textcube 를 url의 root에다 깐 경우, .htaccess 때문에 robots.txt 를 가져가지 못합니다.


http://textcube.org/center/robots.txt
처럼 "존재하지 않는 페이지입니다." 라는 에러 메세지를 보여줍니다.

스팸 트랙백이 넘쳐나요.
http://ssimzie.net/tc 입니다.
이 친구가 미국 유학 중이라서 (서버는 국내 서버임), 어쩌면 외국쪽 링크 타고 들어온 스팸봇이 아닐까 추정합니다. 아직 국내엔 피해 입은 사람들이 나타나지 않은듯?

테터툴즈 1.6.3 을 사용중입니다.


이거 한두번 털리는 것도 아니고, 뭔가 기능적인 장치가 있었으면 좋겠습니다.


1. 하루에 N개 이상이면 트랙백 기능을 통째로 lock 다운 시키는 옵션 같은게 있으면 좋겠습니다. 한국인의 특성상 트랙백 기능은 거의 안 쓰니까 말입니다.

2. 트랙백 대기소를 두어서, 주인장이 허락하면 노출이 허용되고, 아니면 통째로 지워버릴 수 있는 기능이 있었으면 좋겠습니다.
2-1. 트랙백 대기소에서 스팸 트랙백을 테터 본사 DB로 전송할 수 있는 기능이 있으면, 베이지언 네트웍 학습시킬 때 도움이 되겠죠.

3. 트랙백 조회 기능 강화 - 기간을 지정해서 모든 글에 달린 모든 트랙백을 쭉 나열해 볼 수 있고, 통째로 삭제하거나, 일부를 선택 삭제할 수 있도록 하는 기능이 있었으면 좋겠습니다.

4. 트랙백 허용 여부 기능 강화 - 한 방에 모든 글에 대해 트랙백 허용 여부를 조작할 수 있다거나, 공개한지 2-3 달 쯤 지난 글에 대해서는 자동으로 트랙백이 불허되는 기능이 있었으면 좋겠습니다.

HTML 헤더에 정의되는 meta 태그 중에서 검색 엔진에 도움을 줄 수 있는 태그가 있습니다. 바로 robots 태그인데요.
<META NAME="ROBOTS" CONTENT="NOINDEX, NOFOLLOW">

위처럼 정의해두면 검색 엔진이 해당 페이지를 indexing 하지도 않고 거기에 있는 링크를 따라가지 않습니다.

잘 안 지켜지는 태그이긴 한데, 적어도 구글에서는 지키는 것 같더군요.


포스트 본문이 아닌, 검색 결과 페이지나 로그인을 요구하는 페이지에서 저런 메타 태그가 나오면 좋을 것 같습니다.
크롤러들이 긁어갈 때 저런게 있으면 피해갈 테니까 트래픽을 아끼는데 도움이 될 것입니다.

wikipedia를 예로 들겠습니다.
검색 엔진에서 indexing 되어야 할 페이지는 어떤 단어에 대해서 설명하고 있는 페이지이지, 그 페이지를 편집하는 페이지나 편집 내역(history) 페이지가 아닙니다. 따라서 wikipedia에서는  아래와 같은 페이지에서는 robots 태그를 정의해두고 있습니다.
http://en.wikipedia.org/w/index.php?tit … ction=edit  <- 편집하는 페이지
http://en.wikipedia.org/w/index.php?tit … on=history  <- history 페이지

이건 설치형 wiki인 moinmoin 같은 데에도 비슷한 방식으로 활용되고 있습니다.


심지어는 daum에서조차 로그인을 요구하는 페이지에서는 robots 태그를 정의해 뒀습니다.
http://www.daum.net/Mail-bin/login.html … gin_button


제 생각에는 tag로 검색한 결과 페이지나, 지역으로 검색한 결과 페이지라던지, 관리자 화면 같은데서 정의가 되었으면 좋을 것 같습니다.

텍스트큐브 1.7 베타 5790 을 export 해서 사용 중입니다.

setup 할 때보니까, single user 모드가 사라진 것 같더군요. 그래서 다중 사용자 블로그로 설치해봤습니다.

.htaccess 에서 RewriteEngine을 Off로 바꿨고,
config.php 에서 fancyURL 을 0으로 바꿨습니다.

그리고 나서 어떻게 동작하는지 확인해봤는데요.
아래처럼 되는군요. 설치 위치는 /trunk 였는데, 다중사용자 블로그 때문에 중간에 michgan/ 이 끼었습니다.
하지만 거기는 존재하지 않는 위치이기 때문에 index.php를 찾지 못합니다.

http://z.michgan.net/trunk/michgan/index.php?/entry/거시기



rewrite 를 안 쓸려는 이유는,
외부에서 접속할 때 반응 속도가 너무 느려서입니다.
1.6.3 에서는 댓글에 댓글 쓰기 창 같은게 뜨는 속도가, rewrite 을 쓸 때와 안 쓸때 차이가 엄청나더군요.

lib/auth.php 의 함수 requireStrictRoute() 에서,

$_SERVER['HTTP_REFERER'] 를 검사하게 되는데, 여기에 아무 값도 할당이 되어 있지 않아서 발생하는 문제입니다.

텍스트큐브 1.6.3 을 설치해서 사용하고 있습니다.

태터툴즈 0.9x 버전 대부터 꾸준히 사용해오고 있는데, 갈수록 기능이 추가 되는 점은 좋으나, 왠지 점점 더 무거워진다는 느낌이 듭니다.

댓글에 댓글 달기와 같은 기능을 이용하면, 팝업 창에 폼이 뜨는데도 상당히 오랜 시간이 걸리고, 댓글을 전송하는데도 시간이 오래 걸리더군요. 뭔가 오류가 나서 댓글이 안 달아졌나 싶어 다시 달아보거나 보내기를 여러번 클릭해보면 같은 내용의 댓글이 주루룩 달리기 일쑤였습니다.

이런 현상이 rewrite 모듈 때문에 발생하는가 싶어 rewrite 모듈을 끄고 사용하고 있습니다. config.php 에 fancyURL = 0 을 설정하고, .htaccess 에서 RewriteEngine Off 로 설정했습니다. 위에서 언급한 댓글에 댓글 달기 기능이나, 기타 화면 전환에 있어서 반응 속도가 향상 되었음을 체감할 수 있었습니다.

그런데 글 작성하기나 글 삭제하기에 버그가 있군요.
글 목록화면에서 item 오른쪽의 휴지통 버튼을 눌렀을 때, "Precondition Failed" 라는 에러 메세지가 발생합니다. 주소창에 URL에는 "index.php?/owner/entry/delete/890?command=delete" 이라고 바뀌는 군요. 물음표가 두개 들어가 있음을 발견할 수 있었습니다. 그러나, 가운데의 물음표를 &로 바꿔도 동작하지 않습니다.

작성되어 있는 기존 글을 편집한 후에, "저장 후 닫기"를 클릭하면 새로운 글 번호를 부여 받게 됩니다.


1.6.3 이 처음 발표한 이후에 몇번 새로 발표되었다는 사실은 아는데, 현재 설치한 버전을 언제 다운 받았는지 기억 나지 않습니다.

tc 에 들어 있는 파일 중 일부의 시간:
2008-04-24 00:19 rewrite.php
2008-04-24 00:31 setup.php

서버 OS는 fedora 8 을 사용 중입니다.
apache 2.2.8, php 5.2.4, mysql 5.0.45

ps...
좀전에 다시 다운 받아서 엎어쳐 봤는데, 같은 버그가 존재하는군요.

스팸 공격을 방지하는 차원에서 주기적으로 블로그가 설치된 경로를 바꿔주고 있는데요.

텍스트큐브 1.5 에서 데이터 백업을 하게 되면 튀어나오는 XML에
팀블로그 관련 계정 및 글쓴이 정보 같은 것이 포함이 되어 있지 않은 것 같군요.

텍스트큐브 로드맵에 이것과 관련한 티켓을 못 찾았는데, 앞으로도 지원할 예정이
없는건가요?

기본적으로 에디터를 띄우면 WYSIWYG 모드로 갈 것인지 아닌지를 세팅할 수 있도록 해주셨으면 좋겠습니다.
지금은 editor.js 파일을 수정해서 무조건 text로 사용하고 있습니다.

1. 글을 쓰다가 레이아웃을 확인하기 위해 "미리보기"를 누릅니다.
2. 뜨는데 약간 시간이 걸리므로 편집기에서 글을 조금 더 수정합니다.
3. 미리보기로 글을 확인하다가 미리보기에 붙어 있는 "수정"을 누릅니다.
4. 편집기가 따로 있다는 사실을 까먹고 미리보기 윈도에서 글을 편집합니다.

이 경우, 양쪽에서 저장하려고 하면 conflict 가 발생할텐데, 애초에 이런 것을 막기 위해 미리보기 윈도에서는 "수정" 이건 "관리자 링크" 이건 전부 안 보이도록 하는 것(혹은 비활성화)은 어떻습니까?

more & less 에서 less text에 그림을 조합한 경우, WYSIWYG 모드 <-> text 모드를 반복하면 가장 바깥쪽 태그의 시작 부분 이후의 글이 엉망진창 됩니다.

저는 1.0.4 사용 중입니다.

여러 줄에 걸친 그림 제목의 경우, text 모드 <-> WYSIWYG 모드 사이를 반복하면 "\n" 이 >br/< 따위로 바뀌어 버립니다.
WYSIWYG 에서 그림의 제목에서 html 태그를 허용하느냐 마느냐의 문제이겠군요.

아래는 text모드에서 입력한 예시.
[##_1C|1169482576.jpg|width="510" height="270" alt=""| 여러줄에
걸친 그림 제목 _##]

1.0.4 사용 중입니다.