|
php.net | support | documentation | report a bug | advanced search | search howto | statistics | random bug | login |
[2000-12-16 15:58 UTC] ryan at guardiandigital dot com
This is very wierd. php all of a sudden stopped working when we upgraded to apache 1.3.14, and I have two different backtraces depending on the machine.
This problem originated with 4.0.3.pl1, but I saw a bug report saying it was fixed in CVS so I tried the latest tarball on snaps.php.net as of Friday 12/15.
Compile Options
------------
This is from the spec file I am using:
compile() {
./configure \
--prefix=%{_prefix} \
--sysconfdir=/etc \
--with-config-file-path=/etc \
--enable-pic \
--enable-inline-optimization \
--with-exec-dir=%{_bindir} \
--with-regex=system \
--with-gettext \
--with-gdbm \
--enable-magic-quotes \
--enable-safe-mode \
--enable-sysvsem \
--enable-sysvshm \
--enable-track-vars \
--enable-ftp \
--with-mysql=/usr \
--disable-versioning \
--with-xml \
--with-zlib \
--enable-debug \
--disable-pear \
--disable-yp \
$*
make
}
Then I am doing comile --enable-shared to build the DSO and --enable-static to build the php standalone.
php.ini
------
I have played around with several options in here and I do not think it is the problem. I can supply it upon request.
Machine 1
-----------
Apache only sefgaults when there is an "ErrorLog" directive inside of a "VirtualHost" directive. Backtrace below
(gdb) bt full
#0 0x404914dc in pthread_handle_sigcancel (sig=134951340, ctx={gs = 62548,
__gsh = 2061, fs = 47914, __fsh = 2057, es = 0, __esh = 0, ds = 64172,
__dsh = 49151, edi = 135132244, esi = 3221224132, ebp = 134595447,
esp = 134943172, ebx = 134951340, edx = 1075379916, ecx = 3221224136,
eax = 3221224136, trapno = 3221224168, err = 134614136, eip = 134943172,
cs = 12716, __csh = 2059, eflags = 1075379916,
esp_at_signal = 134574437, ss = 4508, __ssh = 2059,
fpstate = 0x4018fecc, oldmask = 0, cr2 = 3221224248}) at pthread.c:663
self = 0x1
jmpbuf = (sigjmp_buf *) 0x80df454
#1 0x805c31a in open_error_log ()
No symbol table info available.
#2 0x805c377 in ap_open_logs ()
No symbol table info available.
#3 0x8060c78 in standalone_main ()
No symbol table info available.
#4 0x80614c3 in main ()
No symbol table info available.
#5 0x400b898b in __libc_start_main (main=0x806116c <main>, argc=2,
argv=0xbffffb84, init=0x804f2d4 <_init>, fini=0x80979dc <_fini>,
rtld_fini=0x4000ae60 <_dl_fini>, stack_end=0xbffffb7c)
at ../sysdeps/generic/libc-start.c:92
argv = (char **) 0xbffffb84
rtld_fini = (void (*)()) 0
stack_end = (void *) 0x1
Machine 2
--------
Apache seems to always segfault if there is a VirtualHost directive... it looks to me like it chokes while trying to resolve the ServerName but I could be wrong.
(gdb) bt
#0 0x5a0b30 in ?? ()
#1 0x5abfaa in _nss_dns_gethostbyname_r (
name=0xbffff660 "grepmaster.test.guardiandigital.com", result=0x2a2b64,
buffer=0x80e4198 "", buflen=1024, errnop=0x2a0a40, h_errnop=0xbffff648)
at nss_dns/dns-host.c:162
#2 0x275c3f in __gethostbyname_r (
name=0xbffff660 "grepmaster.test.guardiandigital.com", resbuf=0x2a2b64,
buffer=0x80e4198 "", buflen=1024, result=0xbffff644, h_errnop=0xbffff648)
at ../nss/getXXbyYY_r.c:182
#3 0x274bd4 in gethostbyname (
name=0xbffff660 "grepmaster.test.guardiandigital.com")
at ../nss/getXXbyYY.c:137
#4 0x806d77e in ap_get_local_host ()
#5 0x80698da in ap_fini_vhost_config ()
#6 0x8057092 in ap_read_config ()
#7 0x8060c41 in standalone_main ()
#8 0x80614c3 in main ()
#9 0x1c898b in __libc_start_main (main=0x806116c <main>, argc=2,
argv=0xbffffba4, init=0x804f2d4 <_init>, fini=0x80979dc <_fini>,
rtld_fini=0x11ae60 <_dl_fini>, stack_end=0xbffffb9c)
at ../sysdeps/generic/libc-start.c:92
I thank you all very much for your time. If you need any more information please let me know and I will be happy to supply it.
Cheers,
Ryan
PatchesPull RequestsHistoryAllCommentsChangesGit/SVN commits
|
|||||||||||||||||||||||||||
Copyright © 2001-2025 The PHP GroupAll rights reserved. |
Last updated: Fri Oct 24 04:00:01 2025 UTC |
If it helps any, I was poking around through the glibc 2.1.3 ChangeLog (the version I am using) and found the following: 1999-09-12 Ulrich Drepper <drepper@cygnus.com> * version.h (VERSION): Bump to 2.1.3. * resolv/nss_dns/dns-host.c (_nss_dns_gethostbyname2_r): if res_search fails don't rely on errno value. (getanswer_r): Sett *ERRNOP in error cases. I hope this helps a little bit. I seriously hope ths is not a glibc problem. :)Yeah, sorry for being rather vague in that respect. Here are some more lines from my spec file: # Build a standalone binary. compile --enable-force-cgi-redirect cp php php_standalone make distclean # Build a module. compile --with-apxs=%{_sbindir}/apxs --enable-shared Where compile() is the same as the first post. Thanks, Ryan