[완료] 우분투 7.10 서버에 moniwiki 설치하여 쓰시는 분 계세요?

zelon의 이미지

이상하게 그전에 debian stable 버젼에서 잘 쓰고 있었는데

그대로 우분투 7.10 서버 버젼에서 쓰려고 하는데 이상한 현상이 발생하네요.

http://www.wimy.com/wiki/wiki.php/etcProgram

에 접속하면 아무런 현상도 없습니다. 그리고 php 파일을 다운받으려 시도하는 것도 아니고, 제가 phpinfo() 를 하는 파일을 해당 위치에 두면 그 파일은 잘 보여주고요. 이상하네요 ㅠ.ㅜ

그리고 http://www.wimy.com/wiki 에 접속하면 wiki.php 파일을 다운받으려고 합니다. 하지만 제가 임의로 phpinfo() 를 보여주는 테스트 파일은 php 실행을 잘 하구요.

한가지 이상한 점은 /var/log/apache2/error.log 파일에

[Fri Nov 16 17:12:59 2007] [notice] child pid 23265 exit signal Segmentation fault (11)

이런 에러 로그가 납니다. 왜 이런 현상이 있는지...

혹시 다른 분들 중에 우분투 서버 7.10 에서 moniwiki 모니위키 깔아서 쓰시는 분 계시나요? 혹시 특별히 설정한 것이 있다던지 그러신분 답변 부탁드립니다~~

keizie의 이미지

gdb에서 php cli로 wiki.php를 실행해보니 db4 어딘가에서 에러가 나더군요. 이거 처리한다는 게 저도 까먹고 있었네요. -_-;

zelon의 이미지

db4 에러라고 하시는게 현재 moniwiki 의 문제라는 말씀이신가요? 아님 제 설정 문제인가요? 조금 자세한 답변 부탁드립니다 ^^;;;

-----------------------------------------------------------------------
GPL 오픈소스 윈도우용 이미지 뷰어 ZViewer - http://kldp.net/projects/zviewer/
http://www.wimy.com

-----------------------------------------------------------------------
GPL 오픈소스 윈도우용 이미지 뷰어 ZViewer - http://zviewer.wimy.com
블로그 : http://blog.wimy.com

wkpark의 이미지

db문제라면 db사용을 꺼보시는게 어떨까 합니다.

config.php에서

$use_counter=0; # 카운터 안씀

$shared_metadb=''; # metadb 안씀

그리고 $dba_type이 뭐라고 되어있는지도 체크해보시고요.
배포판에 따라서 dba 지원 타입이 다를 수 있습니다. 이게 맞지 않으면 종종 문제가 발생하더군요.
(배포판을 업그레이드 하는 경우 등등)

온갖 참된 삶은 만남이다 --Martin Buber

keizie의 이미지

전에 해봤을 땐 _mkdir_p()가 없다고 해서 거기서 그쳤는데 지금보니 wikilib.php 최신판에 있네요. cvs 갱신해서 해보니 잘 됩니다.

우분투 기본 php에서 gdbm이 라이센스 문제로 빠져서 db4를 쓸 수 밖에 없는데, 왜 세그가 나는지 모르겠네요. -_-;

zelon의 이미지

$use_counter, $shared_metadb 를 꺼도 안되네요 ㅠ.ㅜ

혹시나해서 디버깅을 하려고 코드 따라가며 exit() 를 넣어봤는데 실력상 좌절;;

앞에서 말씀하신 php cli 를 깔았는데,

# php wiki.php
Segmentation fault

라고만 뜨네요. 혹시 어떻게 디버깅하는지 가르쳐주실수 있으신가요? ^^;

-----------------------------------------------------------------------
GPL 오픈소스 윈도우용 이미지 뷰어 ZViewer - http://kldp.net/projects/zviewer/
http://www.wimy.com

-----------------------------------------------------------------------
GPL 오픈소스 윈도우용 이미지 뷰어 ZViewer - http://zviewer.wimy.com
블로그 : http://blog.wimy.com

익명 사용자의 이미지

일단은 strace를 이용해보시는게 어떨까요?

$ strace php wiki.php 2>log.txt

zelon의 이미지


strace php wiki.php 를 했더니

Quote:

lstat64("/home", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
lstat64("/home/zelon", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
lstat64("/home/zelon/WWW", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
lstat64("/home/zelon/WWW/wiki", {st_mode=S_IFDIR|0777, st_size=4096, ...}) = 0
lstat64("/home/zelon/WWW/wiki/wikismiley.php", {st_mode=S_IFREG|0777, st_size=5503, ...}) = 0
open("/home/zelon/WWW/wiki/wikismiley.php", O_RDONLY|O_LARGEFILE) = 3
fstat64(3, {st_mode=S_IFREG|0777, st_size=5503, ...}) = 0
read(3, "<?php\n# $Id: wikismiley.php,v 1."..., 8192) = 5503
read(3, "", 8192) = 0
close(3) = 0
stat64("./data/text/InterMap.cache", 0xbfd48f88) = -1 ENOENT (No such file or directory)

이렇게 나네요. 흐음... 왠 InterMap.cache? 혹시나 해서 touch 로 빈 파일을 만들어봤는데 같네요 ㅠ.ㅜ

-----------------------------------------------------------------------
GPL 오픈소스 윈도우용 이미지 뷰어 ZViewer - http://kldp.net/projects/zviewer/
http://www.wimy.com

-----------------------------------------------------------------------
GPL 오픈소스 윈도우용 이미지 뷰어 ZViewer - http://zviewer.wimy.com
블로그 : http://blog.wimy.com

wkpark의 이미지

음 cvs버전쓰시나요? 아니면 1.1.2버전 쓰시나요?

InterMap.cache는 data/text 아래에 있는게 아닌데... 뭔가 이상하군요.. 설정이 잘못 된 듯 합니다.

아래 설정과 비교해보시구요.

$shared_metadb=$data_dir."/metadb";
$shared_intermap=$data_dir."/text/InterMap";

제 추측으로는 $shared_metadb를 잘 못 설정하셨구요. dba_open()하다가 죽는 것 같습니다.

$shared_metadb="";

이렇게 고쳐줘 보세요~

온갖 참된 삶은 만남이다 --Martin Buber

zelon의 이미지

오오~~ 됩니다. 정말정말 감사합니다 :)

아... 전 1.1.2 버젼을 씁니다. ^^;

제가 앞의 $shared_metadb=''; 로 하라는 것을 하다가 잘못했었군요.

;$shared_metadb=

이렇게 해놓았었고 -_-;;; 세미콜론이 왜 앞에 있는지 아마 vim 실수인듯 ;;

제 실수를 제외하면 결과적으로는 $shared_metadb= $data_dir.'/metadb'; 를 $shared_metadb=''; 로 고치니 되네요.
-----------------------------------------------------------------------
GPL 오픈소스 윈도우용 이미지 뷰어 ZViewer - http://kldp.net/projects/zviewer/
http://www.wimy.com

-----------------------------------------------------------------------
GPL 오픈소스 윈도우용 이미지 뷰어 ZViewer - http://zviewer.wimy.com
블로그 : http://blog.wimy.com

inureyes의 이미지

저도 우분투 7.10 서버에서 동작하지 않습니다.^^ monisetup.php부터 들어가지지가 않네요.
config.php에서 $use_counter=0; $shared_metadb=''; 을 하면 세그폴트는 뜨지 않는데 대신 xdebug로 추적하면
Fatal error: Maximum function nesting level of '100' reached, aborting
이라고 뿌려줍니다. _mkdir_p( )를 무한 호출하는군요.

'Everything looks different on the other side.' -Ian Malcomm

'Everything looks different on the other side.' -Ian Malcomm

inureyes의 이미지

이 문제는 추적결과 data 디렉토리에 충분한 권한을 얻지 못할 때 일어나는 에러였습니다.^^
관련하여 workaround나 경고 메세지 출력 루틴을 넣는것이 어떨까 싶네요~

'Everything looks different on the other side.' -Ian Malcomm

'Everything looks different on the other side.' -Ian Malcomm

wkpark의 이미지

아.. 이것은 cvs에서만 나는 문제입니다.

최근에 KLDP위키 업그레이하면서 cvs버전의 _mkdir_p() 문제있다고 김정균님이 지적하셨습니다.

다음은 고친 _mkdir_p()입니다. wikilib.php에서 찾아서 고쳐주시거나, cvs버전을 사용해보시기 바랍니다~

function _mkdir_p($target,$mode=0777) {
  // from php.net/mkdir user contributed notes
  if (file_exists($target)) {
    if (!is_dir($target)) return false;
    else return true;
  }
  // recursivly create dirs.
  return (_mkdir_p(dirname($target),$mode) and mkdir($target,$mode));
}

온갖 참된 삶은 만남이다 --Martin Buber

이재식의 이미지

제가 php 는 일자무식이고 전혀 아는게 없어서요.
일단은 그냥 다음과같이 dba 확인하는 코드를 싹 빼버렸습니다.
설치는되네요;; (아아 이제부터 뭔일이 생기는걸까)

monisetup.php
..
..
function _getHostConfig() {
... <-여기를 삭제
preg_match("/Apache\/2\.0\./",$_SERVER['SERVER_SOFTWARE'],$match);

if ($match) {
$config['query_prefix']='"?"';
while (ini_get('allow_url_fopen')) {
print '

Check a AcceptPathInfo setting for Apache 2.0.xx

';
print '
    ';
    $fp=@fopen('http

    삭제하니 일단은 설치가되네요.
    잘돌아갈지는 써봐야 하는것이겠고 하다 안되면 그냥 dba 관련부분을 일단 삭제하는쪽으로.. 생각했습니다. ^^*

wkpark의 이미지

dba와 _mkdir_p()의 문제였군요? 알려주셔서 감사합니다~

온갖 참된 삶은 만남이다 --Martin Buber

댓글 달기

Filtered HTML

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

BBCode

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param>
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

Textile

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • You can use Textile markup to format text.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Markdown

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • Quick Tips:
    • Two or more spaces at a line's end = Line break
    • Double returns = Paragraph
    • *Single asterisks* or _single underscores_ = Emphasis
    • **Double** or __double__ = Strong
    • This is [a link](http://the.link.example.com "The optional title text")
    For complete details on the Markdown syntax, see the Markdown documentation and Markdown Extra documentation for tables, footnotes, and more.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Plain text

  • HTML 태그를 사용할 수 없습니다.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 줄과 단락은 자동으로 분리됩니다.
댓글 첨부 파일
이 댓글에 이미지나 파일을 업로드 합니다.
파일 크기는 8 MB보다 작아야 합니다.
허용할 파일 형식: txt pdf doc xls gif jpg jpeg mp3 png rar zip.
CAPTCHA
이것은 자동으로 스팸을 올리는 것을 막기 위해서 제공됩니다.