Slashdot Mirror


PHP 4.2.1 released

ClickNMix writes: "The latest version of PHP has been released here. With improved DomXML and Apache 2 support in with the usual bug fixes and improvements." There is still no production support for PHP or for that matter mod_perl in Apache 2.0 yet though.

18 comments

  1. Changes by Anonymous Coward · · Score: 0, Informative

    Added safe-mode checks to show_source(), parse_ini_file() and rmdir(). Also fixed security problems with safe_mode_include_dir directive. (Rasmus)
    Changed HTTP upload code to accept 0 byte file uploads. (Zeev)
    Major update of domxml. New functions, better DOM compliance and bug fixes:
    Changed the old $node->append_child() to $node->append_sibling() since the new append_child() behaves correctly (= W3C standard).
    Added domxml functions:
    domxml_elem_get_elements_by_tagname()
    domxml_doc_get_elements_by_tagname()
    domxml_doc_get_element_by_id()
    domxml_elem_remove_attribute()
    domxml_elem_get_attribute_node()
    Fixed a segfault in domxml_unlink().
    Added formatting option to domxml_dump_mem().
    (Uwe, jtate, Chregu)
    Fixed a bug in socket_select() that could cause unexpected behavior when using a statement like $w = $e = array($sock); This change unfortunately prevents the use of constant values (e.g. NULL) for the socket array paramaters. Instead, use a temporary variable or an expression with the leftmost member being a temporary variable. ex.: socket_select($w, $r, $e = NULL, 10); (Jason)
    Fixed crashes in the session serializer. (Stas)
    Fixed malformed atime/mtime with touch(). (Yasuo)
    Fixed a couple of bugs in array_sum() and array_merge(). (Andrei)
    Fixed SJIS directory name handling under Windows. (Rui)
    Fixed empty mb_output_handler() output when Content-Type is specified. (Yasuo)
    Fixed the false logic in ext/session which made SID constant not to be defined when cookies are disabled. (Sascha)
    Fixed possible crash bug in HTTP uploads. (Patch: Lucas Schroeder)
    Fixed possible NULL-pointer dereferencing in the COM extension which caused 'Error in php_OLECHAR_to_char()' warnings on various places. Also modified the API to consistently return NULL in case of an error. (Alan, Harald)
    Fixed a bug in the COM extension that caused outproc servers to 'hang' because of a missing Release() call. (Alan, Harald)

  2. This is old by Anonymous Coward · · Score: 2, Informative

    PHP 4.2.1 came out May 13th, 10 days ago.

    Anyway, no, it doesn't have production Apache 2.0 support, and won't until 4.3.0, but it works fine for me for development purposes. Even with the Windows versions.

    1. Re:This is old by ClickNMix · · Score: 1, Offtopic

      Hey, you hurt my feelings! ;o)

      Seriously though, I posted this, oddly enought, 11 days ago.. and it was rejected.. why/how its turned up now Im not sure!!

      And yeah, my bad on the wording, the Apache 2.0 support is still development but it is supposed to be better then prior versions. To quote the site: PHP 4.2.1 also has improved (but still experimental) support for Apache version 2.0

      --
      I saw the light at the end of the tunnel... But it was just someone with a flashlight bringing more work.
  3. Installation under apache 2.0 by Anonymous Coward · · Score: 0

    I'm trying to get it to run on a w2k apache 2.0 server. Where can I find php4.c ?

    I'm going for this solution:

    LoadModule php4_module c:/php/sapi/php4apache.dll

    AddModule mod_php4.c

    AddType application/x-httpd-php .php

    1. Re:Installation under apache 2.0 by Anonymous Coward · · Score: 0

      RTFM!

    2. Re:Installation under apache 2.0 by Anonymous Coward · · Score: 1, Insightful

      You don't need mod_php4.c unless you're compiling it... You want to add these lines:

      (to the end of the list)
      LoadModule php4_module modules/php4apache2.dll
      AddType application/x-httpd-php .php

      (not the older apache one, but the newer php4apache2.dll, it's in the sapi directory)

      I believe there's a way to use it with the new filtering stuff, but the PHP docs aren't really clear on this yet... however, this will work.
      Make sure you copy the php.ini and other php files to the right places.

    3. Re:Installation under apache 2.0 by Anonymous Coward · · Score: 1, Informative

      First off; let me say that I appreciate your help.

      I have, however failed to get it to work so far

      This is what i have done so far:

      1) I have installed The PHP files in C:\PHP\

      2) I have copied php.ini-dist to c:\WINNT\
      3) I have edited php.ini in c:\WINNT\ as follows:

      doc_root = "c:\Program Files\Apache Group\Apache2\htdocs\"

      extension_dir = "c:\php"

      4)I have modied httpd.conf in c:\Program Files\Apache Group\Apache2\conf\ in the following fashion:

      LoadModule php4_module c:/php/sapi/php4apache2.dll

      #AddModule mod_php4.c

      AddType application/x-httpd-php .php

      Now, as you can see, the mod_php4.c part is commented out. If I let it in, apache fails to start. If I comment it out, apache starts but it doesnt interpret my php scripts.

      People on #php tell me that the new version of PHP wont work with apache 2.0 yet. Prove them wrong if you can.

      .. and tell me what I am doing wrong (other than trying to run a webserver off a w2k machine)

      .. and yes, now I have R(ead)TFM several times.

    4. Re:Installation under apache 2.0 by Anonymous Coward · · Score: 1, Informative

      Hrm, what error message are you getting? And this is with Apache 2.0.36 and PHP 4.2.1, correct? And did you copy php4ts.dll to the winnt/system32 directory?

      And, just so you know, from my phpinfo screen:
      _SERVER["SERVER_SOFTWARE"]Apache/2.0.36 (Win32) PHP/4.2.1

    5. Re:Installation under apache 2.0 by Anonymous Coward · · Score: 0

      I Just installed the 2.0.36. I was running the previous one and I wrote over the pre-existing php4ts.dll in the winnt/system32 dir. Now it works.

      Kick ass :D

      Thanks guys :D

    6. Re:Installation under apache 2.0 by Anonymous Coward · · Score: 0

      While your at it, you'll probably want to remove that useless NTFS partition and move on to a real operating system.

      You know.. something without DLL's. hinthint =P

  4. Question by DarkKnightRadick · · Score: 0, Redundant

    What is so good with PHP and do you really need mod_perl for perl scripts to work in Apache (and doesn't mod_perl already install with Apache)? Personally, I don't want to see the Apache download file get to much bigger with a bunch of extra stuff not everyone is going to use.

    --
    "There is a way that seems right to a man, but its end is the way of death." Proverbs 16:25 (NKJV)
    1. Re:Question by Anonymous Coward · · Score: 1, Informative

      Uhm, they aren't bundled with Apache.

      They are optional modules. If you don't know what they're for or have no use for them, don't download them, or go read about them and find out.

    2. Re:Question by DarkKnightRadick · · Score: 1

      First, I don't see how it was redundant, but thats okay.

      Two, the article indicated a PHP bundled with Apache, and I've seen Apache downloads from the Apache web site that are bundled with mod_perl (and mod_ssl). Thats why I asked my question.

      --
      "There is a way that seems right to a man, but its end is the way of death." Proverbs 16:25 (NKJV)
    3. Re:Question by Anonymous Coward · · Score: 0

      No, PHP is bundled with Apache *support*, not with Apache. PHP is also bundled with support for IIS, and a bunch of other web servers. It's of note about Apache though, because the support is for v2.0 of Apache, and that's fairly new.

  5. If only it compiled cleanly under Solaris ... by grokBoy · · Score: 1

    Anyone had any luck? I had to tweak a load of php_config.h definitions just to get it to compile (Solaris 8/Sparc), and then make install croaked ...

  6. Great under YDL by Anonymous Coward · · Score: 0

    I just compiled it last night under Yellow Dog Linux 2.2 on my Beige G3. Works like a charm, though I'm not using apache 2.0, just 1.3.4 (or something).