본문 바로가기

Tip

TextCube 설치시 apache mod_rewrtie 인식 못하는 문제

텍스트 큐브를 사용하기 위하여서는 아파치 웹서버의 mod_rewrite 모듈이 설치되어있어야 합니다.

없어도 되긴 합니다만, 

도메인 아래에 디렉토리 없이 바로 텍스트 큐브를 설치하는 경우에

URL이 http://blog.reeze.com/?/entry/글제목

이런식으로 중간에 /?/ 이 들어가게 됩니다.


mod_rewrite를 설치해주는것이 좋은데요,  이상하게 설치가 되어있는데도 모듈이 없다고 나오는 경우가 있습니다.

이럴때는 다음과 같이 처리를 해줍니다.

setup.php에서   아래 라인을 찾아서 

else{
  $rewrite=0;
  @unlink($filename);
  checkStep(33,false);
  return false;
}

다음과 같이 변경해줍니다.

 else{
  $rewrite=1;
  //@unlink($filename);
  //checkStep(33,false);
  //return false;
  }

이것은 mod_rewrite 를 점검하지 않고 그냥 진행하겠다는 뜻입니다.

이렇게 해서 설치가 완료되었는데도 제대로 동작을 하지 않는 경우도 있습니다.

그럴경우에는 웹서버의 루트 디렉토리에 .htaccess 파일이 제대로 생성되었는지 확인해봅니다.

파일이 없는경우는  아래 내용을 복사해서 .htaccess 파일을 만들어줍니다.


#<IfModule mod_url.c>
#CheckURL Off
#</IfModule>
#SetEnv PRELOAD_CONFIG 1
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} -f
RewriteRule ^(cache)+/+(.+[^/])\.(cache|xml|txt|log)$ - [NC,F,L]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^(.+[^/])$ $1/ [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(thumbnail)/([0-9]+/.+)$ cache/$1/$2 [L]
RewriteRule ^(.*)$ rewrite.php [L,QSA]


저도 반나절 이것땜에 헤맸네요.

어쨎든 해결은 됐습니다. ㅎㅎ