php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Bug #47484 PHP 4 code dosent work on php5
Submitted: 2009-02-23 15:58 UTC Modified: 2009-02-23 16:01 UTC
Votes:1
Avg. Score:5.0 ± 0.0
Reproduced:1 of 1 (100.0%)
Same Version:0 (0.0%)
Same OS:0 (0.0%)
From: skrishnamur1 at bloomberg dot net Assigned:
Status: Wont fix Package: *Compile Issues
PHP Version: 5.2.8 OS: Soalris 10
Private report: No CVE-ID: None
View Add Comment Developer Edit
Welcome! If you don't have a Git account, you can't do anything here.
You can add a comment by following this link or if you reported this bug, you can edit this bug over here.
(description)
Block user comment
Status: Assign to:
Package:
Bug Type:
Summary:
From: skrishnamur1 at bloomberg dot net
New email:
PHP Version: OS:

 

 [2009-02-23 15:58 UTC] skrishnamur1 at bloomberg dot net
Description:
------------
Hi, I recently compiled php 4.3.2 with apache 2.2.9, but it does not seem to detect the php module at startup (does not display any error messages). When i do an ldd -r libphp4.so, I see a bunch of symbol not found messages. I tried using the options mentioned in Bug 17273, but apapche 2.2.9 does not seem to recognize the --enable-shared=max --enable-rule=SHARED_CORE directives. any pointers would be quite helpful. Im also constrained to using php 4.3.2 as i am trying to port over PHP code that dosent seem to display properly on PHP 5.2.1 (I compile PHP 5.2.1 and it loads fine)Is PHP 5.2.1 supposed to be fully backward compatible with code written for PHP 4.3.2. I heard something about differences in pass-by-value vs pass-by-reference:
# ldd -r libphp4.so
        libnsl.so.1 =>   /lib/libnsl.so.1
        libpspell.so.15 =>       /usr/lib/libpspell.so.15
        libiconv.so.2 =>         /usr/local/lib/libiconv.so.2
        libintl.so.1 =>  /lib/libintl.so.1
        libbz2.so.1 =>   /usr/lib/libbz2.so.1
        libresolv.so.2 =>        /lib/libresolv.so.2
        libm.so.2 =>     /lib/libm.so.2
        libsocket.so.1 =>        /lib/libsocket.so.1
        libc.so.1 =>     /lib/libc.so.1
        libmp.so.2 =>    /lib/libmp.so.2
        libmd.so.1 =>    /lib/libmd.so.1
        libscf.so.1 =>   /lib/libscf.so.1
        libCrun.so.1 =>  /usr/lib/libCrun.so.1
        libaspell.so.15 =>       /usr/lib/libaspell.so.15
        libdoor.so.1 =>  /lib/libdoor.so.1
        libuutil.so.1 =>         /lib/libuutil.so.1
        libgen.so.1 =>   /lib/libgen.so.1
        /platform/SUNW,SPARC-Enterprise/lib/libc_psr.so.1
        symbol not found: apr_pool_cleanup_null         (./libphp4.so)
        symbol not found: ap_loaded_modules             (./libphp4.so)
        symbol not found: unixd_config          (./libphp4.so)
        symbol not found: ap_max_requests_per_child             (./libphp4.so)
        symbol not found: ap_server_root                (./libphp4.so)
        symbol not found: apr_pstrdup           (./libphp4.so)
        symbol not found: ap_server_root_relative               (./libphp4.so)
        symbol not found: apr_palloc            (./libphp4.so)
        symbol not found: apr_pool_cleanup_register             (./libphp4.so)
        symbol not found: ap_sub_req_lookup_uri         (./libphp4.so)
        symbol not found: ap_destroy_sub_req            (./libphp4.so)
        symbol not found: ap_run_sub_req                (./libphp4.so)
        symbol not found: apr_table_elts                (./libphp4.so)
        symbol not found: apr_table_get         (./libphp4.so)
        symbol not found: apr_table_set         (./libphp4.so)
        symbol not found: ap_get_server_version         (./libphp4.so)
My configure lines are as follows:
PHP 4.3.2:
./configure --prefix=/bb/web/apache_2_2_9/php --with-apxs2=/bb/web/apache_2_2_9/bin/
apxs --exec-prefix=/bb/web/apache_2_2_9/php --cache-file=../config.cache --with-conf
ig-file-path=/bb/web/apache_2_2_9/conf --with-config-file-scan-dir=/bb/web/apache_2_
2_9/php --disable-cli --without-pspell --enable-force-cgi-redirect --disable-sapi --
disable-debug --enable-pic --disable-rpath --disable-exec --enable-inline-optimizati
on --with-bz2 --with-exec-dir=/bb/web/apache_2_2_9 --with-freetype-dir=/bb/web/apach
e_2_2_9 --without-gd --with-gettext --without-ncurses --with-gmp --with-iconv=/usr/l
ocal/lib --with-libiconv-prefix=/bb/web/apache_2_2_9 --disable-posix --with-png --wi
th-pspell --with-regex=system --with-xml --with-zlib --with-layout=GNU --enable-bcma
th --enable-exif --enable-ftp --enable-magic-quotes --enable-safe-mode --enable-sysv
sem --enable-sysvshm --enable-discard-path --enable-track-vars --enable-trans-sid --
enable-yp --enable-wddx --enable-mbstring --enable-mbstr-enc-trans --enable-mbregex 
--without-oci8 --with-mysql=shared --with-pgsql=shared --enable-memory-limit --enabl
e-bcmath --enable-shmop --enable-versioning --enable-calendar --enable-dbx --enable-
dio --enable-mcal

Apache 2.2.9 (Original) :
./configure --prefix=/bb/web/apache_2_2_9 --enable-mods-shared=all  --enable-ssl=shared --with-ssl=/opt/OpenSSL -with-apr=/bb/web/apache_2_2_9 -with-apr-util=/bb/web/apache_2_2_9 

Apache 2.2.9 (Modified) :
 ./configure --prefix=/bb/web/apache_2_2_9 --enable-shared=max --enable-rule=SHARED_CORE --enable-mods-share=all  --enable-ssl=shared --with-ssl=/opt/OpenSSL -with-apr=/bb/web/apache_2_2_9 -with-apr-util=/bb/web/apache_2_2_9 

I added the lines to httpd.conf as below:
# PHP Configuration for Apache
#
# Load the apache module
#
LoadModule php4_module modules/libphp4.so
#
# Cause the PHP interpreter handle files with a .php extension.
#
<Files *.php>
SetOutputFilter PHP
SetInputFilter PHP
LimitRequestBody 9524288
</Files>
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps
AddHandler application/x-httpd-php .php


Expected result:
----------------
PHP 4 should load and be able to display php pages 

Actual result:
--------------
PHP does not load at apache startup, php pages dont open up

Patches

Add a Patch

Pull Requests

Add a Pull Request

History

AllCommentsChangesGit/SVN commitsRelated reports
 [2009-02-23 16:01 UTC] derick@php.net
We are sorry, but we can not support PHP 4 related problems anymore.
Momentum is gathering for PHP 6, and we think supporting PHP 4 will
lead to a waste of resources which we want to put into getting PHP 6
ready.
 
PHP Copyright © 2001-2024 The PHP Group
All rights reserved.
Last updated: Fri Mar 29 02:01:30 2024 UTC