[PHP] imagegif() unable to open temporary file
Hi, I'm having a problem with imagegif() - it is apparently unable to open the temporary file it needs to write to: Warning: imagegif(): Unable to open temporary file in /path/to/script.php on line 192 I am using php 4.3.10 compiled with --with-gd. php was compiled using httpd-2.0.52, but apache has been since upgraded to 2.0.54. >From the docs I've read online, it seems like php should support writing gif images - we used the packaged gd libraries, which are gd 2.0.28, which is said to support gif. GD Support enabled GD Version bundled (2.0.28 compatible) GIF Read Supportenabled GIF Create Support enabled The error message looks like a permissions problem to me, but I can't figure out what the source of that might be. Since we don't define a temporary directory in php.ini, is it being set to the system default, which is /tmp? The /tmp directory has full write permissions. One thought I had was that since I am using Fedora Core 3, /tmp is mounted with noexec, which might be causing a problem. However, I remounted it without noexec, and imagegif() is still unhappy. Any thoughts on this would be very much appreciated! Thanks, Kristina -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP] php related segmentation fault with Apache 2.0.55
Hello, I am seeing Apache segmentation faults with some processes which turn out to be php related. This is a newly upgraded Apache from Apache 2.0.54 to Apache 2.0.55. The scripts that are failing with the new Apache work with no problems with the old Apache. Traceback from Apache is below. Let me know if I should provide any more info. php version is 4.3.10, and linux distro is fedora core 3 - php and apache are both compiled from source, not installed from rpm. Thanks, Kristina #0 zend_hash_index_update_or_next_insert (ht=0xb7d247a0, h=4, pData=0xbfffec70, nDataSize=12, pDest=0x0, flag=1) at /usr/local/src/php-4.3.10/Zend/zend_hash.c:392 nIndex = 4 p = (Bucket *) 0x7068702e #1 0xb7c6bf23 in zend_list_insert (ptr=0x9b57ba4, type=162888612) at /usr/local/src/php-4.3.10/Zend/zend_list.c:45 index = 4 le = {ptr = 0xda1a0c4, type = 2, refcount = 1} #2 0xb7c6c05e in zend_register_resource (rsrc_result=0x0, rsrc_pointer=0xda1a0c4, rsrc_type=2) at /usr/local/src/php-4.3.10/Zend/zend_list.c:98 rsrc_id = 162888612 #3 0xb7c452f8 in _php_stream_alloc (ops=0x9b57ba4, abstract=0x9b57ba4, persistent_id=0x0, mode=0xb762f895 "rb") at /usr/local/src/php-4.3.10/main/streams.c:281 le = {ptr = 0x24, type = 1126289980, refcount = 797960056} ret = (php_stream *) 0xda1a0c4 #4 0xb7c46b06 in _php_stream_fopen_from_fd (fd=16, mode=0xb762f895 "rb", persistent_id=0x0) at /usr/local/src/php-4.3.10/main/streams.c:2067 self = (php_stdio_stream_data *) 0x9c0871c stream = (php_stream *) 0x9c08730 sb = {st_dev = 16, __pad1 = 0, st_ino = 3230021650, st_mode = 33188, st_nlink = 1, st_uid = 42807, st_gid = 100, st_rdev = 0, __pad2 = 0, st_size = 1179, st_blksize = 32768, st_blocks = 8, st_atim = {tv_sec = 1124473602, tv_nsec = 315743024}, st_mtim = {tv_sec = 1126289980, tv_nsec = 797960056}, st_ctim = {tv_sec = 1126289980, tv_nsec = 799959752}, __unused4 = 0, __unused5 = 0} #5 0xb7c46c9d in _php_stream_fopen ( filename=0xda143d8 "/home/serve/STJOSEPHGC/eventsdb.php", mode=0xb762f895 "rb", opened_path=0xb1a8, options=165) at /usr/local/src/php-4.3.10/main/streams.c:1999 realpath = 0xd993454 "/mnt/nfs/STJOSEPHGC/eventsdb.php" st = {st_dev = 16, __pad1 = 0, st_ino = 3230021650, st_mode = 33188, st_nlink = 1, st_uid = 42807, st_gid = 100, st_rdev = 0, __pad2 = 0, st_size = 1179, st_blksize = 32768, st_blocks = 8, st_atim = {tv_sec = 1124473602, tv_nsec = 315743024}, st_mtim = {tv_sec = 1126289980, tv_nsec = 797960056}, st_ctim = {tv_sec = 1126289980, tv_nsec = 799959752}, __unused4 = 0, __unused5 = 0} open_flags = 0 fd = 16 ret = (php_stream *) 0x0 persistent = 16 persistent_id = 0x0 #6 0xb7c47fb5 in php_plain_files_stream_opener (wrapper=0xb7cf3dc4, path=0xda143d8 "/home/serve/STJOSEPHGC/eventsdb.php", mode=0xb762f895 "rb", options=165, opened_path=0xb1a8, context=0x0) at /usr/local/src/php-4.3.10/main/streams.c:2463 No locals. #7 0xb7c485dc in _php_stream_open_wrapper_ex ( path=0xda143d8 "/home/serve/STJOSEPHGC/eventsdb.php", mode=0xb762f895 "rb", options=173, opened_path=0xa5, context=0x0) at /usr/local/src/php-4.3.10/main/streams.c:2660 stream = (php_stream *) 0x0 wrapper = (php_stream_wrapper *) 0xb7cf3dc4 path_to_open = 0xda143d8 "/home/serve/STJOSEPHGC/eventsdb.php" #8 0xb75d84ce in ?? () from /home/sys/Zend/lib/Optimizer-2.5.7/php-4.3.x/ZendOptimizer.so No symbol table info available. #9 0x0da143d8 in ?? () No symbol table info available. #10 0xb762f895 in ?? () from /home/sys/Zend/lib/Optimizer-2.5.7/php-4.3.x/ZendOptimizer.so No symbol table info available. ---Type to continue, or q to quit--- #11 0x00ad in ?? () No symbol table info available. #12 0xb1a8 in ?? () No symbol table info available. #13 0x in ?? () No symbol table info available. -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP] php related segmentation fault with Apache 2.0.55
I actually did that before emailing about php 4.3.10. With php 4.4.1, the traceback is different: Reading symbols from /home/sys/Zend/lib/ZendExtensionManager.so...done. Loaded symbols for /home/sys/Zend/lib/ZendExtensionManager.so Error while reading shared library symbols: .//home/sys/Zend/etc/pfpro.so: No such file or directory. Reading symbols from /home/sys/verisign/lib/libpfpro.so...done. Loaded symbols for /usr/local/verisign//lib/libpfpro.so #0 0xb7ca0c15 in php_handler (r=0xda05f90) at /home/sys/src/php-4.4.1/sapi/apache2handler/sapi_apache2.c:538538 if (parent_req && strcmp(parent_req->handler, PHP_MAGIC_TYPE) && strcmp(parent_req->handler, PHP_SOURCE_MAGIC_TYPE) && strcmp(parent_req->handler, PHP_SCRIPT)) { warning: not using untrusted file ".gdbinit" (gdb) bt full #0 0xb7ca0c15 in php_handler (r=0xda05f90) at /home/sys/src/php-4.4.1/sapi/apache2handler/sapi_apache2.c:538 orig_bailout = {{__jmpbuf = {0, 0, 0, 0, 0, 0}, __mask_was_saved = 0, __saved_mask = {__val = {0 ctx = (php_struct *) 0xd9e9a80 conf = Variable "conf" is not available. (gdb) On 11/17/05, Max Belushkin <[EMAIL PROTECTED]> wrote: > I have had various problems with upgrading one or the other, until I took it > as a rule to recompile both upon an upgrade. On the machine I do things > completely manually on [which has it's drawbacks], I generally also upgrade > to the current version of PHP together with any Apache update, and > vice-versa. The current 4.x version is 4.4.1 [although on a FreeBSD install I > had some issues and downgraded to 4.4.0, but this behaviour hasn't been > confirmed outside of FreeBSD until now] - perhaps try recompiling PHP to the > current 4.x version (or if you feel up to it, upgrade to the 5.x versions?), > and see if it helps? Resolved a lot of my problems in the past... > > On Thursday 17 November 2005 22:31, kristina clair wrote: > > 2.0.54 to Apache 2.0.55. The scripts that are failing with the new > > Apache work with no problems with the old Apache. > > -- > PHP General Mailing List (http://www.php.net/) > To unsubscribe, visit: http://www.php.net/unsub.php > > -- "In most cases, people, even wicked people, are far more naive and simple-hearted than one generally assumes. And so are we." /* last line, 1st ch., The Brothers Karamazov */ -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP] php related segmentation fault with Apache 2.0.55
On 11/17/05, Marco Kaiser <[EMAIL PROTECTED]> wrote: > Hi Kristina, > > try to disable / remove the Zend Extension (ZendExtensionManager etc. > [ZEND] and all below in your php.ini). > > try if php segfault again without the Zend Products loaded. Hello, After removing Zend, I get the same error, minus the Zend errors: #0 0xb7e20c15 in php_handler (r=0xda0cf10) at /home/sys/src/php-4.4.1/sapi/apache2handler/sapi_apache2.c:538538 if (parent_req && strcmp(parent_req->handler, PHP_MAGIC_TYPE) && strcmp(parent_req->handler, PHP_SOURCE_MAGIC_TYPE) && strcmp(parent_req->handler, PHP_SCRIPT)) { warning: not using untrusted file ".gdbinit" (gdb) bt full #0 0xb7e20c15 in php_handler (r=0xda0cf10) at /home/sys/src/php-4.4.1/sapi/apache2handler/sapi_apache2.c:538 orig_bailout = {{__jmpbuf = {0, 0, 0, 0, 0, 0}, __mask_was_saved = 0, __saved_mask = {__val = {0 ctx = (php_struct *) 0xd9f0578 conf = Variable "conf" is not available. (gdb) Thanks, Kristina -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP] php related segmentation fault with Apache 2.0.55
Hi, I just installed the latest available snap, and now I'm seeing a zend error, but not a sapi error: Reading symbols from /home/sys/Zend/lib/ZendExtensionManager.so...done. Loaded symbols for /home/sys/Zend/lib/ZendExtensionManager.so Error while reading shared library symbols: .//home/sys/Zend/etc/pfpro.so: No such file or directory. Reading symbols from /home/sys/verisign/lib/libpfpro.so...done. Loaded symbols for /usr/local/verisign//lib/libpfpro.so #0 _efree (ptr=0x0) at /usr/local/src/php4-STABLE-200511211545/Zend/zend_alloc.c:242 242 CALCULATE_REAL_SIZE_AND_CACHE_INDEX(p->size); (gdb) bt full #0 _efree (ptr=0x0) at /usr/local/src/php4-STABLE-200511211545/Zend/zend_alloc.c:242 p = (zend_mem_header *) 0xfff4 cache_index = Variable "cache_index" is not available. (gdb) I think there are two things worth noting: 1. /home/sys/Zend is a separate installation of Zend ... does this need to be updated as well? 2. this segfault is only happening for one script, as far as we know. Is there anything I should look for in this script to narrow things down? Thanks, Kristina On 11/21/05, Marco Kaiser <[EMAIL PROTECTED]> wrote: > Hi Kristina, > > have you tried the lates cvs snap? I know there was some problems with > apache2 and mod_rewrite maybe it is solve in CVS. > > -- > Marco Kaiser > -- "In most cases, people, even wicked people, are far more naive and simple-hearted than one generally assumes. And so are we." /* last line, 1st ch., The Brothers Karamazov */ -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP] php related segmentation fault with Apache 2.0.55
Hi, When I said I installed the latest available snapshot, I meant I installed the latest available snap in the 4.4.x tree - so, the version I installed was php4-STABLE-200511211545.tar.gz. Kristina On 11/21/05, Marco Kaiser <[EMAIL PROTECTED]> wrote: > Hi Kristina, > > I think there is no version available for 5.1.0-cvs. Try to remove the > Zend Extensions and give me please feedback. > > > I just installed the latest available snap, and now I'm seeing a zend > > error, but not a sapi error: > -- > Marco Kaiser > -- "In most cases, people, even wicked people, are far more naive and simple-hearted than one generally assumes. And so are we." /* last line, 1st ch., The Brothers Karamazov */ -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP] php related segmentation fault with Apache 2.0.55
On 11/21/05, Marco Kaiser <[EMAIL PROTECTED]> wrote: > Hi Kristina, > > > When I said I installed the latest available snapshot, I meant I > > installed the latest available snap in the 4.4.x tree - so, the > > version I installed was php4-STABLE-200511211545.tar.gz. > > tha Zend API changed so your installed zend products doenst work with > cvs version of php. Disable alle Zend Stuff in you php.ini and tell me > if this error still happen. After disabling Zend in php.ini, I get: #0 0xb7df5ee9 in yy_push_state (new_state=1) at Zend/zend_language_scanner.c:5831 5831yy_start_stack[yy_start_stack_ptr++] = YY_START; (gdb) bt full #0 0xb7df5ee9 in yy_push_state (new_state=1) at Zend/zend_language_scanner.c:5831 new_size = Variable "new_size" is not available. (gdb) php is, of course, still installing its own zend extension. But all of the lines pertaining to Zend were indeed removed from php.ini. Thanks, Kristina -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP] php related segmentation fault with Apache 2.0.55
Hi again, I tried compiling and installing php 4.4.1 with Apache 2.0.54, out of curiosity (because php 4.3.10 and Apache 2.0.54 didn't give me any problems). With this combination, I still get a segmentation fault with at least one php script. The gdb backtrace is: #0 0xb7e207c1 in php_handler (r=0xda16ca8) at /home/sys/src/php-4.4.1/sapi/apache2handler/sapi_apache2.c:538 538 if (parent_req && strcmp(parent_req->handler, PHP_MAGIC_TYPE) && strcmp(parent_req->handler, PHP_SOURCE_MAGIC_TYPE) && strcmp(parent_req->handler, PHP_SCRIPT)) { (gdb) bt full #0 0xb7e207c1 in php_handler (r=0xda16ca8) at /home/sys/src/php-4.4.1/sapi/apache2handler/sapi_apache2.c:538 orig_bailout = {{__jmpbuf = {0, 0, 0, 0, 0, 0}, __mask_was_saved = 0, __saved_mask = {__val = { 0 ctx = (php_struct *) 0xda08818 conf = Variable "conf" is not available. I think it is worth reiterating that this is only happening with one script, to our knowledge. The actual file being served is a .shtml file which includes a php script. I looked at the php script, and it looks like a pretty straightforward database access script, using mysql. Is there anything I should look for in that script? Thanks, Kristina On 11/17/05, kristina clair <[EMAIL PROTECTED]> wrote: > I actually did that before emailing about php 4.3.10. With php 4.4.1, > the traceback is different: > > Reading symbols from /home/sys/Zend/lib/ZendExtensionManager.so...done. > Loaded symbols for /home/sys/Zend/lib/ZendExtensionManager.so > Error while reading shared library symbols: > .//home/sys/Zend/etc/pfpro.so: No such file or directory. > Reading symbols from /home/sys/verisign/lib/libpfpro.so...done. > Loaded symbols for /usr/local/verisign//lib/libpfpro.so > #0 0xb7ca0c15 in php_handler (r=0xda05f90) > at /home/sys/src/php-4.4.1/sapi/apache2handler/sapi_apache2.c:538538 > if (parent_req && strcmp(parent_req->handler, > PHP_MAGIC_TYPE) && strcmp(parent_req->handler, PHP_SOURCE_MAGIC_TYPE) > && strcmp(parent_req->handler, PHP_SCRIPT)) { > warning: not using untrusted file ".gdbinit" > > (gdb) bt full > #0 0xb7ca0c15 in php_handler (r=0xda05f90) > at /home/sys/src/php-4.4.1/sapi/apache2handler/sapi_apache2.c:538 > orig_bailout = {{__jmpbuf = {0, 0, 0, 0, 0, 0}, __mask_was_saved = 0, > __saved_mask = {__val = {0 > ctx = (php_struct *) 0xd9e9a80 > conf = Variable "conf" is not available. > (gdb) > > On 11/17/05, Max Belushkin <[EMAIL PROTECTED]> wrote: > > I have had various problems with upgrading one or the other, until I took > > it > > as a rule to recompile both upon an upgrade. On the machine I do things > > completely manually on [which has it's drawbacks], I generally also upgrade > > to the current version of PHP together with any Apache update, and > > vice-versa. The current 4.x version is 4.4.1 [although on a FreeBSD install > > I > > had some issues and downgraded to 4.4.0, but this behaviour hasn't been > > confirmed outside of FreeBSD until now] - perhaps try recompiling PHP to the > > current 4.x version (or if you feel up to it, upgrade to the 5.x versions?), > > and see if it helps? Resolved a lot of my problems in the past... > > > > On Thursday 17 November 2005 22:31, kristina clair wrote: > > > 2.0.54 to Apache 2.0.55. The scripts that are failing with the new > > > Apache work with no problems with the old Apache. > > > > -- > > PHP General Mailing List (http://www.php.net/) > > To unsubscribe, visit: http://www.php.net/unsub.php > > > > > > > -- > "In most cases, people, even wicked people, are far more naive and > simple-hearted than one generally assumes. And so are we." > /* last line, 1st ch., The Brothers Karamazov */ > -- "In most cases, people, even wicked people, are far more naive and simple-hearted than one generally assumes. And so are we." /* last line, 1st ch., The Brothers Karamazov */ -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP] SSI problem with php after 4.3.10 -> 4.4.1 upgrade
Hello, I'm having a problem with certain SSI files which include php scripts after upgrding php from 4.3.10 to 4.4.1. The includes look like: In some cases, the page output is different with 4.4.1 than it is with 4.3.10. In the worst cases, Apache gives a segmentation fault, and the page is blank. Has anyone encountered any similar issues? Thanks, Kristina -- "In most cases, people, even wicked people, are far more naive and simple-hearted than one generally assumes. And so are we." /* last line, 1st ch., The Brothers Karamazov */ -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP] SSI problem with php after 4.3.10 -> 4.4.1 upgrade
On 12/5/05, Jay Blanchard <[EMAIL PROTECTED]> wrote: > [snip] > I'm having a problem with certain SSI files which include php scripts > after upgrding php from 4.3.10 to 4.4.1. > The includes look like: > > > In some cases, the page output is different with 4.4.1 than it is with > 4.3.10. In the worst cases, Apache gives a segmentation fault, and > the page is blank. > > Has anyone encountered any similar issues? > [/snip] > > We'd have to see some code to begin to analyse what the problem might be. > Can you send php code snips from eventdb.php? > The code is short. The same php script is being included in the page which is displaying differently and the page which is causing the apache segfault. if (empty($ID)){ $ID='1'; } $today = date("Ymd"); $conn = mysql_connect ([snip]); if ($conn == false){ echo mysql_errno() . ": " . mysql_error() . ""; exit; } else { $rtn = mysql_select_db ("[tablename]"); $sql = "select * from events where ID = ".$ID; $result = mysql_query ($sql); if ( ($row = mysql_fetch_row($result)) && ($today<=$row[4] ) ){ //if ( $row = mysql_fetch_ row($result)) { switch ($fld){ case 2: echo $row[2]; break; case 5: echo $row[5]; break; case 6: echo $row[6]; break; case 7: echo $row[7]; break; default: echo $row[1]; break; } } } By the way, the backtrace from the apache segfault is: #0 0xb7e095cc in zend_hash_index_update_or_next_insert (ht=0xb7ea29c0, h=0, pData=0xbfffdc60, nDataSize=12, pDest=0x0, flag=1) at /home/sys/src/php-4.4.1/Zend/zend_hash.c:390 390 p = ht->arBuckets[nIndex]; (gdb) bt full #0 0xb7e095cc in zend_hash_index_update_or_next_insert (ht=0xb7ea29c0, h=0, pData=0xbfffdc60, nDataSize=12, pDest=0x0, flag=1) at /home/sys/src/php-4.4.1/Zend/zend_hash.c:390 nIndex = 0 p = Variable "p" is not available. (gdb) That segfault backtrace is the same even if I compile php with the --without-zend-memory-manager flag, and also when I disable all Zend settings in php.ini. Thanks, Kristina -- "In most cases, people, even wicked people, are far more naive and simple-hearted than one generally assumes. And so are we." /* last line, 1st ch., The Brothers Karamazov */ -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP] SSI problem with php after 4.3.10 -> 4.4.1 upgrade
In case anyone encounters this problem - using the latest 4.4.x snapshot fixed the problem for me (thanks, developers!). Kristina On 12/5/05, kristina clair <[EMAIL PROTECTED]> wrote: > On 12/5/05, Jay Blanchard <[EMAIL PROTECTED]> wrote: > > [snip] > > I'm having a problem with certain SSI files which include php scripts > > after upgrding php from 4.3.10 to 4.4.1. > > The includes look like: > > > > > > In some cases, the page output is different with 4.4.1 than it is with > > 4.3.10. In the worst cases, Apache gives a segmentation fault, and > > the page is blank. > > > > Has anyone encountered any similar issues? > > [/snip] > > > > We'd have to see some code to begin to analyse what the problem might be. > > Can you send php code snips from eventdb.php? > > > > The code is short. The same php script is being included in the page > which is displaying differently and the page which is causing the > apache segfault. > > if (empty($ID)){ > $ID='1'; > } > $today = date("Ymd"); > $conn = mysql_connect ([snip]); > if ($conn == false){ > echo mysql_errno() . ": " . mysql_error() . ""; > exit; > } > else { > $rtn = mysql_select_db ("[tablename]"); > $sql = "select * from events where ID = ".$ID; > $result = mysql_query ($sql); > if ( ($row = mysql_fetch_row($result)) && > ($today<=$row[4] > ) ){ > //if ( $row = > mysql_fetch_ > row($result)) { > switch ($fld){ > case 2: > echo $row[2]; > break; > case 5: > echo $row[5]; > break; > case 6: > echo $row[6]; > break; > case 7: > echo $row[7]; > break; > default: > echo $row[1]; > break; > } > } > >} > > > By the way, the backtrace from the apache segfault is: > #0 0xb7e095cc in zend_hash_index_update_or_next_insert (ht=0xb7ea29c0, h=0, > pData=0xbfffdc60, nDataSize=12, pDest=0x0, flag=1) > at /home/sys/src/php-4.4.1/Zend/zend_hash.c:390 > 390 p = ht->arBuckets[nIndex]; > (gdb) bt full > #0 0xb7e095cc in zend_hash_index_update_or_next_insert (ht=0xb7ea29c0, h=0, > pData=0xbfffdc60, nDataSize=12, pDest=0x0, flag=1) > at /home/sys/src/php-4.4.1/Zend/zend_hash.c:390 > nIndex = 0 > p = Variable "p" is not available. > (gdb) > > That segfault backtrace is the same even if I compile php with the > --without-zend-memory-manager flag, and also when I disable all Zend > settings in php.ini. > > Thanks, > Kristina > > -- > "In most cases, people, even wicked people, are far more naive and > simple-hearted than one generally assumes. And so are we." > /* last line, 1st ch., The Brothers Karamazov */ > -- "In most cases, people, even wicked people, are far more naive and simple-hearted than one generally assumes. And so are we." /* last line, 1st ch., The Brothers Karamazov */ -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php