태마 설정시 500에러 > 질문답변

홈페이지 제작?
마우스 클릭으로 뚝딱 만들어 보세요!

질문과 답변

Question & Answer

태마 설정시 500에러

본문

안녕하세요

 

ntk1.1.4 버전과 그누보드 5.3.2.2 빌드로 설치는 정상적으로 끝낫는데요

 

테마를 ntk 태마로 변경시 모든 페이지가500에러가 뜨네요..

 

혹시나 빌드 버전이 다르면 괜찬을까 싶어 그누보드 버전도 변경 해보고 ntk 버전도 변경해서 설치 해보았으나

 

동일한 증상입니다.

 

혹시 해결책을 아시는 분이 계신가요?

댓글 27개

저도 똑같은 500 에러 반복해서 나고 있습니다.
몇 번 반복해서 신중하게 해보기도 하고
계정 초기화하고 해도 안되고 오늘도 역시 똑같은 에러이네요...

저는 호스팅을 카페24를 사용하고 있습니다.

음..그렇군요 지금까지 확인 해봣을때 테마쪽 파일 구문이나 문법 에러 인거 같은데..

테마 변경시만 전체 페이지가 500에러 나는걸 보면  테마 설정까지는 정상적으로 지정 되었는데

테마쪽 스킨 파일에서 구문 오류가 있는게 아닐까 싶습니다. 확인해보려면 테마 전체 소스를 다 까서 찾아야 되는데..

시간이 없으니 난감하네요 ㅠ

대부분 잘 인스톨되는 상황이니 말씀하신대로 아마 한 줄 구문일 듯 한데요.
좀 힌트를 주시면 제가 한번 살펴볼 수 있을 것 같습니다.
정말 멋진 테마 공개해주셨는데 몇 몇 사용자들에게서는 똑같은 에러로 애를 먹네요..

혹시 ntk파일 풀어서 ftp로 올릴때 똑같은 파일이 있다라면서 덮어쓰게 하는게 있던데요..
처음올리는 건데 이상하게 그렇더군요..
그것과 상관이 있을런지요..

안녕하세요.
몇몇분들께서 동일한 증상이 나타나고 있는걸로 봐서 빌더 자체 오류같은데 아직 찾질 못하고 있네요.
/extend/bart.001.config.php 파일에서
define('BT_DEBUG', false);  이 부분을
define('BT_DEBUG', true); 이렇게 고치시고 출력된 오류 메시지를 알려주시면 감사하겠습니다.
제 환경에서는 오류가 안나서 어디가 문제인지 알수가 없네요 ㅜㅜ

안녕하세요~
이게..500에러는 display_errors을 true로 줘도 오류 메시지가 안떠요 ㅠ
혹시나 해서 말씀하신대로 해보았으나 블링크 페이지만 뜨네요 마찬가지 서버 access 로그나 error 로그도
500에러만 찍히고 상세 내용은 안뜹니다.
지금까지 제가 확인한 결과는 빌더 테마부분에서 구문오류가 아닌가 싶거든요
ntk  테마 변경 설정 하고 db g5_config 에 cf_theme 가 bart로 설정되었을때는 500에러고 수동으로 bagic로 변경하면
또 문제없이 기본 스킨으로 나오는 상황입니다.
로그나 오류 메시지 없이 모든 테마파일 검토중이긴한데 파일이 원체 많아서 힘드네요 ㅠ

네.. 안그래도 에러구문 알려드릴려고 해도 안나와서 못 알려드렸네요..
특정 서버환경에서 문제인건 아닌가요?
대다수 잘 되시고 안되시는 분들의 내용이 500에러이면 말이죠...
암튼 두 분 수고가 많으십니다....

아오 일단 원인은 찾은듯 합니다..
Notice: Constant BT_ADMIN_PATH already defined in /home//public_html/extend/bart.001.config.php on line 40
Notice: Constant BT_WIDGET_DIR already defined in /home//public_html/extend/bart.001.config.php on line 69
Notice: Constant BT_WIDGET_PATH already defined in /home//public_html/extend/bart.001.config.php on line 70
Notice: Constant BT_WIDGET_URL already defined in /home//public_html/extend/bart.001.config.php on line 71 Errno: 8
Message: Undefined index: bm_desc
Depth: 0
File: /home//public_html/theme/bart/lib/class/builder/menu.php (Line : 195)
Class : kr\bartnet\system\BError
Depth: 1
File: /home//public_html/theme/bart/lib/class/builder/menu.php (Line : 228)
Function : getDataList
Class : kr\bartnet\builder\BMenu
Depth: 2
File: /home//public_html/extend/bart.001.config.php (Line : 144)
Function : getTreeList
Class : kr\bartnet\builder\BMenu
Depth: 3
File: /home//public_html/common.php (Line : 622)
Function : include_once
Notice: Undefined index: class in /home//public_html/theme/bart/lib/class/system/error.php on line 78 Depth: 4
File: /home//public_html/_common.php (Line : 2)
Function : include_once
Notice: Undefined index: class in /home//public_html/theme/bart/lib/class/system/error.php on line 78 Depth: 5
File: /home//public_html/index.php (Line : 2)
Function : include_once
Notice: Undefined index: class in /home//public_html/theme/bart/lib/class/system/error.php on line 78

bart.001.config.php 파일 오류부분은 한번 살펴 보았는데 배치파일 경로 부분이네요..
sjkim님
혹시  bart.001.config.php파일에 define('BT_DEBUG', true); 부분 하단에
error_reporting(E_ALL);  <<요 구문 추가해주시고 페이지 한번 실행 시켜 주시겠어요?
아마 제가 생각하기에는 동일한 리포팅 뜰꺼 같습니다.

헛...  필드이름 변경된걸 적용안했었군요 ㅜㅜ
bm_desc => bm_subtitle 로 변경했었는데 적용이 안된거 같습니다.
/theme/bart/lib/class/builder/menu.php  파일에 195라인
bm_desc 를 bm_subtitle 로 고쳐주시면 될듯합니다.
요즘 통 바빠서 업댓을 못하고 있네요.
조만간 업댓해놓겠습니다.
찾아주셔서 감사합니다.  앤국이님

음 ㅠ 말씀하신 필드명 변경 후 확인 해본 결과 클래스 관련 오류 부분은 전면 수정이 되었는데요 ㅠ
여전히 상수 값 관련 경로 오류로 테마 인식이 안되네요 ㅠ
문제가 되는 경로 오류 부분은 아래와 같습니다.
define('BT_ADMIN_PATH', BT_PATH.'/'.BT_ADMIN_DIR);(관리자)
[위젯]
define('BT_WIDGET_DIR', 'widget');
define('BT_WIDGET_PATH', BT_PATH.'/'.BT_WIDGET_DIR);
define('BT_WIDGET_URL', BT_URL.'/'.BT_WIDGET_DIR);
해당 경로 부분을 인식 못해서 500에러가 뜨네요 ㅠ 번거롭게 해드려 죄송합니다.

일단 오류 부분은 위의 4개 라인 삭제하면 수정은 됩니다..

위젯 같은경우 3개라인 은 46번 라인부터 48번라인에 상수 선언이 되어 있는데 71번 라인에 이중선언해서

생기는 문제였고..BT_ADMIN_PATH의 경우는 bart.001.config.php가 아닌 다른 페이지에서 선언 되어있

더라구요 그래서 삭제하였더니 오류 수정은 완료 되었으나 그래도 500에러가 뜨네요.. php  오류는 다 수정되었는데 500에러면 정말 구문 오류인거 같습니다 ㅠ 혹시 mysql connect 부분 오류가 생기면 동일한 증상이라 한번 확인해보았는데 아무 이상 없었구요 ㅠ 난감하네요..

일단 테마 설정까지 오류 수정 부분 정리 해드립니다.

1./theme/bart/lib/class/builder/menu.php  파일에 195라인
bm_desc -> bm_subtitle  변경
2.bart.001.config.php 에서 71번라인~73번라인 삭제

두가지 수정하시면 어드민 패이지는 정상적으로 동작됩니다.
테마 설정 또한 가능하구요.

그런데 어드민이 아닌 메인 페이지에
Fatal error: Call to undefined function kr\bartnet\isval() in /home//public_html/theme/bart/index.php on line 29
오류가 뜨네요
확인 해보니 if(!bt\isval($mtype))  메인 페이지 설정 조건문 함수 입니다 ㅠ

NTK님, 앤국이님 두 분 수고가 많으시네요...
정리해 주신거 저도 적용해 보고 피드백드릴게요...
감사합니다.

config.php 파일에 error_reporting(E_ALL); 추가하니 동일한 리포팅 떠서
아래 두가지 수정했으나 어드민페이지 아직 먹통이네요..
아래 수정이 제대로 되었나 좀 봐주세요...

1./theme/bart/lib/class/builder/menu.php  파일에 195라인
$rs['bm_desc'] = bt\binstr($rs['pg_desc'], $rs['bm_desc']);  이 라인 아래 라인처럼 수정
$rs['bm_subtitle'] = bt\binstr($rs['pg_desc'], $rs['bm_subtitle']);

2.bart.001.config.php 에서
42번라인 71번라인~73번라인
총 4개 라인 삭제

이렇게 수정했는데 어드민페이지 작동도 안되고 오류구문도 없는 상태이네요..
혹시 수정이 잘못되었나요?

아 한가지 빼먹엇네요 죄송합니다

bart.001.config.php 파일에서
93번라인
if(basename(G5_THEME_PATH)!=BT_DIR){
    return;
}
이 조건문을
if(G5_THEME_PATH!=BT_DIR){
    return;
}
이렇게 바로 상수값 비교로 수정해주시면 될꺼에요

네  위에꺼가 맞는데..상수 내용도 bart로 같은데  저부분을 전체경로로 맞추니

어드민 페이지 테마 설정이 되더라구요 ;;

둘다 desc 에서 subtitle 로 바꼈습니다.
이유가 있어서 바꿨는데 자세히 훑어보질 못했네요..

$rs['bm_subtitle'] = bt\binstr($rs['pg_subtitle'], $rs['bm_subtitle']);

이렇게 해보세요.

일단 github에는 수정된 부분 올려뒀습니다.

https://github.com/hyuk-june/ntk

사이트에 배포는 좀 더 검토 후 올리겠습니다.
너무 너덜너덜 털려서 부끄럽네요 ㅜㅜ

감사합니다 ㅎㅎ

지금 파악된 문제가 되는 부분 공유해드릴께요.

네임스페이드로 선언된  bt의 함수

/public_html/theme/bart/lib/func 상의

cmd.lib.php 에 선언된 함수들이

Fatal error: Call to undefined function 오류를 발생 시키고 있습니다 ㅠ

지금 메인 페이지의 kr\bartnet\isval()도 그렇고 어드민에서  ntk 빌더 설정 부분 전체가

동일한 함수 요청이 안되는 상황이네요.

임의로 해당 페이지에 필요 함수를 직접 include 시켰더니 정상 동작하는 걸로 봐서 함수 문제는 아닌거 같습니다.

해결에 도움은 못드리고 계속 오류만 찾고 있네요 죄송합니다

즐거운 주말입니다..운영자님

그 어제 말씀드린 네임스페이스 함수 관련 사항인데요..

loader.php 에 네임스페이스 namespace kr\bartnet; 로 선언되있고

cmd.lib.php 에도 네임스페이스 namespace kr\bartnet; 로 선언되어있네요..

네임스페이스는 중복 명칭선언해도 상관없나요? 제가 네임스페이스는 잘 안써봐서 잘 모르겟네요..

아 그리고 bart.001.config.php 에서 loader.php include 하고 loader.php 에서 func 와  lib  폴더의 전체 파

일  include 시키는 로직이신 거죠?

네임스페이스는 현재파일이 어떤 네임스페이스에 속한다고 지정해줘야 됩니다.
그래서 각 파일에 정의되어 있는거구요.
loader.php 는 어떤 파일에서 클래스가  사용될때 자동으로 해당 파일을 include 하는 기능을 가지고 있습니다.
전체를 한꺼번에 include 시키는것이 아니라 사용될때 자동으로 include 됩니다.

안녕하세요 님의 빌더를 활용해서 사이트를 만들려고 합니다.

보니  몇가지 ERROR 가 있는거 같네요 ....  그문제들 해결이 되려면 오래 걸릴지 여쭙니다.

님의 빌더가 쉽고 잘되어있는거 같아 사용해보려 했는데 포기해야 하나요?

 

Menu