Forum Moderators: coopster

Message Too Old, No Replies

PHP has encountered a Stack overflow

         

bomburmusicmallet

4:11 am on Apr 18, 2007 (gmt 0)

10+ Year Member



Hi,

I am developing a site. The site used to be on a Unix box, but the client wants an Access db, so we moved it to a Windows box at a new host. The php coding for the database stuff is in one directory (members) that requires a login. However, the rest of the site is public, and while it's all php script, there is nothing used beyond some includes and a few if/elses.

While surfing around the public pages, I noticed that I got the message "PHP has encountered a Stack overflow" in one directory only (and it's not the members directory). I called tech support, but they don't support php scripts. I am thinking that it's not the php code, as it worked on the other server and no changes were made.

Here's some server specs:

PHP Version 4.3.11

System Windows NT P3SWH043 5.2 build 3790
Build Date Mar 30 2005 17:32:35
Server API ISAPI
Virtual Directory Support enabled
Configuration File (php.ini) Path C:\WINDOWS\php.ini
PHP API 20020918
PHP Extension 20020429
Zend Extension 20021010
Debug Build no
Thread Safety enabled
Registered PHP Streams php, http, ftp, compress.zlib

Zend logo This program makes use of the Zend Scripting Language Engine:
Zend Engine v1.3.0, Copyright (c) 1998-2004 Zend Technologies

Can anyone help? Thanks in advance.

jatar_k

12:47 pm on Apr 18, 2007 (gmt 0)

WebmasterWorld Administrator 10+ Year Member



I thought this bug was interesting
[bugs.php.net...]

PHP does not give this message ever, it must be a <insert your software package here> error messages and thus you'll have to contact its authors.

and this
[pear.php.net...]

found one that mentioned this

I got a message - "PHP has encountered a Stack overflow" on our production (Windows 2003) server, but had no problem on the test server (Linux). It turned out to be an incorrect DB date format on a field. It seems the Linux box was more lenient than Windows!

if you search on the exact error in quotes it comes up with a bunch of issues, all on windows, take a spin though those for possibilities.

eelixduppy

12:52 pm on Apr 18, 2007 (gmt 0)



This does seem interesting. Could it possibly be a recursive function that is causing php to crash?

eelixduppy

1:29 pm on Apr 18, 2007 (gmt 0)



Added - if this isn't a PHP error then where could it be coming from? Maybe Zend has something to do with it? It seems like having some Zend extension is the only thing the same in all of the cases I've seen. I don't use Zend but I'm going to continue to look into this

jatar_k

1:38 pm on Apr 18, 2007 (gmt 0)

WebmasterWorld Administrator 10+ Year Member



the pear link above talks about it being a problem with zend optimizer

eelixduppy

2:15 pm on Apr 18, 2007 (gmt 0)



try setting this in your php.ini file:

zend_optimizer.enable_loader = 0

zend doesn't address this issue directly on their website or in their forums, that I can find. This definitely is coming from zend optimizer as my research has shown. I'm still not sure what causes this to happen, though. I'm guessing some kind of server/optimizer conflicts, but I'm not sure. Try the above setting or have your host update everything to recent releases to see if that fixes anything. Keep us updated! :)

Good luck!

bomburmusicmallet

8:14 pm on Apr 18, 2007 (gmt 0)

10+ Year Member



Hi, sorry to sound a bit dense, but would I know if I am using the Zend optimizer? The site is hosted, and I do not have access to the php.ini file. I have already contacted the host and questioned if it could be some setting on the Windows box, but if an issue is in anyway related to PHP (as in, the file extension is PHP), they will not even discuss the problem.

>>Could it possibly be a recursive function that is causing php to crash?

I don't think so, as the only functions in the files are include a header and include a footer. Plus, the same includes are in other directories, and those are fine. This happens in only one of the directories.

Thanks.