httpd가 CGI 를 호출하는 순서(??)
글쓴이: 하하 / 작성시간: 수, 2003/08/13 - 10:18오전
안녕하세요~~ :D
구체적으로 어떻게 아파치가 cgi를 부르는지를 알고 싶습니다.
그래서 나름대로 아파치를 싱글모드 httpd -X 로 놓고 gdb를 돌려
하나 하나 보고 있습니다.
gdb 상에서 이런 에러가 뜨는데 이유를 알고 싶습니다.
아래는 아파치 main 함수를 한단계식 실행 하다 에러가 난 부분을 보여주고 있습니다.
582 ap_fixup_virtual_hosts(pconf, server_conf); (gdb) 583 ap_fini_vhost_config(pconf, server_conf); (gdb)
httpd: Could not determine the server's fully qualified domain name, using 223.1.1.64 for ServerName
584 apr_hook_sort_all(); (gdb) 585 if (configtestonly) { (gdb) 590 signal_server = APR_RETRIEVE_OPTIONAL_FN(ap_signal_server); (gdb) 591 if (signal_server) { (gdb) 599 apr_pool_clear(plog); (gdb) 601 if ( ap_run_open_logs(pconf, plog, ptemp, server_conf) != OK) { (gdb) (98)
Address already in use: make_sock: could not bind to address 0.0.0.0:8080
no listening sockets available, shutting down
602 ap_log_error(APLOG_MARK, APLOG_STARTUP |APLOG_ERR, (gdb) Unable to open logs 604 destroy_and_exit_process(process, 1); (gdb) bt #0 main (argc=2, argv=0xbffffa44) at main.c:604 #1 0x402a7336 in __libc_start_main (main=0x80839ec <main>, argc=2, ubp_av=0xbffffa44, init=0x8062594 <_init>, fini=0x809a910 <_fini>, rtld_fini=0x4000d2fc <_dl_fini>, stack_end=0xbffffa3c) at ../sysdeps/generic/libc-start.c:129 (gdb)
Forums:
오류에 대한 답, 도움되는 글
첫번째 오류
conf/httpd.conf
에 Servename 설정 부분의 지정이 잘못되어서 그렇습니다,
두번째 이미 8080포트에 바인드된 서버가 있나보군요..
그래서 리슨 설정을 하다가 죽는 겁니다.
ps1 참고 아파치 gdb한 예
http://www.ezdoum.com/stories.php?story=02/08/17/3254153
ps2. 참고 아파치 관련 여러 자료
http://www.ezdoum.com/stories.php?story=02/08/14/1029605
이거 중에
아파치 아키텍쳐
(아파치 돌아가는 내부 구조 및 모듈간의 상호작용)
http://www.grad.math.uwaterloo.ca/~oadragoi/CS746G/a1/apache_conceptual_arch.html
http://www.grad.math.uwaterloo.ca/~oadragoi/CS746G/a2/acc.html
요거가 특히 도움이 될듯 하군요..
좋은 결과 있으시길..
울랄라~ 호기심 천국~!!
http://www.ezdoum.com
댓글 달기