Follow Slashdot stories on Twitter

 



Forgot your password?
typodupeerror
×
PHP Software Programming Apache

PHP 4.3.2 Released 49

seldo writes "Everyone's favourite scripting language ;-) has released an update. From their site: 'The PHP developers are proud to announce the immediate availability of PHP 4.3.2. This release contains a huge number of bug fixes and is a strongly recommended update for all users of PHP. Full list of fixes can be found in the NEWS file.' This incremental release also has useful additions, such as updating to support GD 2.0.12."
This discussion has been archived. No new comments can be posted.

PHP 4.3.2 Released

Comments Filter:
  • by poulbailey ( 231304 ) on Thursday May 29, 2003 @10:08AM (#6067197)
    What's the official word on Apache 2.0 support? Do they still recommend that you use Apache 1.x for now?
    • by yelvington ( 8169 ) on Thursday May 29, 2003 @10:54AM (#6067622) Homepage
      PHP and Apache 2.0 play together nicely. However, some third-party libraries that extend PHP's core functionality do NOT play nicely in a threaded environment. Solution: Run Apache 2.0 in prefork mode.
      • some third-party libraries that extend PHP's core functionality do NOT play nicely in a threaded environment

        This has been the stock answer for a while (and I don't question it), but has anyone ever seen a list detailing each module and whether they are thread-safe under Apache 2? There are *tons* of modules and I only use a small subset so I would like to be able to check a list to see if I might be OK to try Apache 2.

        The big one for me would be Postgres.

        Anyone seen such a list? I've asked one of the de
        • by yelvington ( 8169 ) on Thursday May 29, 2003 @02:14PM (#6069238) Homepage
          There's a list of commonly used libraries on the Apache Web site, but it's full of question marks, and postgres isn't mentioned.

          http://httpd.apache.org/docs-2.1/developer/threa d_ safety.html#commonlibs

          The list really addresses the issue of linking the libraries directly with Apache, but I presume it's the same issue as indirectly linking through PHP.

          libmysqlclient is thread-safe if compiled with the proper flags.

        • I have a webapp that uses PHP/Apache2/PostgreSQL without issue. But I would research more before using it for your applications. I had gotten to test it quite abit before porting the whole application over to PostgreSQL from MySQL.
  • php programmers (Score:3, Insightful)

    by InsaneCreator ( 209742 ) on Thursday May 29, 2003 @10:17AM (#6067305)
    PHP, being one of the simplest languages to learn, unfortunately attracts HUGE numbers of really bad programmers, who only know how to retrieve data from a DB (mysql, of course) and print it out using a simple loop. And then they think they know everything.

    Theese are the people creating many "professional" websites - people, who have no idea why using register_globals is a distster waiting to happen, what is SQL injection, why every bit comming from the user should be treated as unsafe, etc.

    PHP might be easy to use, but it's also very easy to write scripts, which should never be allowed to run on a networked computer.
    • PHP, being one of the simplest languages to learn, unfortunately attracts HUGE numbers of really bad programmers

      And that's exactly why I use PHP! Err..

      I know how to write good code (I think. How do you define what's good?). I know why register_globals is bad (and I have it turned off). I have no clue wtf SQL injection is, but obviously every bit coming from the user should be treated as unsafe, and I code that way too. Fucking with sites that don't is something I consider my civil duty. (Way too man
    • by $rtbl_this ( 584653 ) on Thursday May 29, 2003 @12:32PM (#6068390)

      Everything InsaneCreator just said is true. I've worked with people who have written amazingly dangerous PHP scripts for commercial web sites and don't have the programming background to understand why their code is so insecure. With support for automating PHP code generation built into Dreamweaver this is probably going to become a more widespread problem.

      It's very easy to pick up the basics of PHP and develop scripts quickly, even with limited programming experience. Sadly until recently so many of the default settings in PHP (still required by a lot of freely available scripts out there) make it a non-trivial task to secure these scripts. The point about register_globals is a good one -- the fact that it allows users to change the value of a variable by specifying it in the URL is extremely dangerous for obvious reasons. This has not been the default behaviour in PHP for some time, but most people I know end up switching it back on to avoid having to rewrite all their scripts to use HTTP session variables.

      Of course it's possible to write insecure code in any language, and the newer versions of PHP have filled in some of the bigger security holes, but by being so newbie friendly it's still going to end up with more than its share of dangerous scripts.

      And don't even get me started on PHP-Nuke! :)

      • by mbogosian ( 537034 ) <matt@arenaun[ ]ited.com ['lim' in gap]> on Thursday May 29, 2003 @01:04PM (#6068648) Homepage
        It's very easy to pick up the basics of PHP and develop scripts quickly, even with limited programming experience. Sadly until recently so many of the default settings in PHP (still required by a lot of freely available scripts out there) make it a non-trivial task to secure these scripts.

        The same might be said for C. How many inexperienced C programmers have you seen do something like this:

        #include <string.h>

        int main(int argc, char *argv[])
        {
        char buffer[1024];

        if (argc > 1)
        {
        strcpy(buffer, argv[1]);
        }

        return 0;
        }

        register_globals was never a good idea. That's why it's been off by default for the past several releases. Unless you're using placeholders in your SQL, nearly every Web app has the potential to be susceptable to bad things:

        /* SQL injector's dream */
        $db->execute("SELECT * FROM my_table WHERE id = $userInput");

        vs.

        /* The only way to fly */
        $db->execute('SELECT * FROM my_table WHERE id = :?', $vars);


        This is not limited to the 'Nukes or PHP. Perl, Python, C, Java, etc. all suffer from the same problem.
    • So what you are saying is that php is the visual basic of the web? :-)
    • people need to get away from using PHP and start using JSP. In simple terms its basicly the same thing but you have access to all the wonderful things that Java servlets provides and PHP doesnt. (ie. easy to read. easy to code. much greater functionality.)
  • Apache & PHP (Score:2, Interesting)

    by termos ( 634980 )
    This story is about PHPs new version. PHP is a scripting language which can do a lot of things. The most used is of course on the WEB, but there is also a lot of httpd, and apache is one of them, so I ask: What does story have to do with Apache?.
    Perl is also supported by Apache, but I don't see Perl news under some Apache section. Don't get me wrong on this though, I love Apache and PHP, but they are two independent pieces of software.
    • The /. cabal only regards two languages as relevant C and Perl, they deny or try to bury other interesting and/or useful languages, like PHP, Java, Ruby, or Smalltalk. I wonder if a properly tuned php/apache combo could keep up with /code's perl/mod_perl/apache cluster setup. Admitedly /code has served them mostly well for 250,000 users with some hiccups here and there, but there are plenty of other CMS+Blog engines out there written in php or perl. Scoop [kuro5hin.org], php-Nuke [phpnuke.org], and postNuke [postnuke.com] are some of the big ones.
    • Although PHP is available for many other web servers and is capable running as a standalone scripting engine, the PHP Project under the Apache Software Foundation [apache.org] umbrella (as stated on the front page of php.net [php.net]). I'm not sure when the change took place though.

      So it make some sense putting it under the Apache section, though putting it under the Developers section as well as Apache, and PHP would have been a better choice.

    • Re:Apache & PHP (Score:3, Insightful)

      by TheSunborn ( 68004 )
      The point MIGHT be that php is part of apache. Remember Apache is far more then just a webserver. Just have a look at php.apache.org
    • Re:Apache & PHP (Score:4, Informative)

      by clonebarkins ( 470547 ) on Thursday May 29, 2003 @12:42PM (#6068464)

      The last sentence on the right of the main PHP page says:

      PHP is a project of the

      You're confusing one Apache propject (namely, the webserver) with the entire suite of Apache software.

  • changes to note (Score:5, Informative)

    by ubiquitin ( 28396 ) * on Thursday May 29, 2003 @11:13AM (#6067767) Homepage Journal
    I combed through the changenotes and here are the ones that I thought were among the most important:

    # Added a new Apache 2 SAPI module (apache2handler) based on the old version (apache2filter).
    # Fixed several 64-bit problems
    # Fixed bug #22672 (User not logged under Apache2). (Ian)
    # Fixed bug #22989 (sendmail not found by configure). (igyu@ionsphere.org)
    # Fixed bug #17098 (make Apache2 aware that PHP scripts should not be cached). (Ilia)
    # Fixed bug #20802 (PHP would die silently when memory limit reached). (Ilia)
    # Fixed bug #21498 (mysql_pconnect connection problems). (Georg)
  • by dananderson ( 1880 ) on Saturday May 31, 2003 @07:54PM (#6087125) Homepage
    Major changes, from the release Announcement [php.net]:
    • Fixes several potentially hazardous integer and buffer overflows.
    • Fixes for several 64-bit problems.
    • New Apache 2.0 SAPI module (sapi/apache2handler, enabled with --with-apxs2).
    • New session_regenerate_id() function. (Important feature against malicious session planting).
    • Improvements to dba extension.
    • Improvements to thttpd SAPI module.
    • Dropped support for GDLIB version 1.x.x (php_gd.dll) on Windows.
    • An unix man page for CLI version of PHP.
    • New "disable_classes" php.ini option to allow administrators to disable certain classes for security reasons.
  • python (Score:2, Funny)

    by Alpha_Nerd ( 565637 )
    Everyone's favourite scripting language ;-)

    I use Python you insensitive clod!

One man's constant is another man's variable. -- A.J. Perlis

Working...