PHP compile definitions

Apache/PHP upgrade

source: http://forums.cpanel.net/showthread.php?s=&threadid=16757

Can someone explain the different options in the WHM rebuild Apache screen?
It seems there are a lot of people who have had good or bad experiences with the different modules and it would be good to have an overview.

I will make a list and perhaps the moderator can make this sticky for everyone to see - I will keep it updated if people comment on it.


Expires Module
This module provides for the generation of Expires HTTP headers according to user-specified criteria.
http://httpd.apache.org/docs/mod/mod_expires.html

Raise FD_SETSIZE to 16384 (System Wide) - DEFAULT
Raises the number of open descriptors per process.
http://httpd.apache.org/docs/misc/descriptors.html

Prevent Users from reading other webroots - DEFAULT

Frontpage Module - DEFAULT

Gzip Module (experimental) (Version 1.3.26.1a)

Raise HARD_SERVER_LIMIT - DEFAULT
This compile-time constant defines the maximum possible number of server processes. It places a ceiling on the number of concurrent requests the server can handle.
http://httpd.apache.org/dev/apidoc/...RVER_LIMIT.html

Perl Module (not required to run ..........)

PHP Module - DEFAULT

- Version 4.2.3

- Version 4.3.2

- Version 4.3.3 - DEFAULT

- Version 4.3.4

- Bc Math - DEFAULT
For arbitrary precision mathematics PHP offers the Binary Calculator which supports numbers of any size and precision, represented as strings.
http://www.phpbuilder.com/manual/ref.bc.php

- Calendar Support - DEFAULT
The calendar extension presents a series of functions to simplify converting between different calendar formats.
http://www.phpbuilder.com/manual/ref.calendar.php

- Curl (Version 7.10.5)
PHP supports libcurl, a library created by Daniel Stenberg, that allows you to connect and communicate to many different types of servers with many different types of protocols. libcurl currently supports the http, https, ftp, gopher, telnet, dict, file, and ldap protocols. libcurl also supports HTTPS certificates, HTTP POST, HTTP PUT, FTP uploading (this can also be done with PHP's ftp extension), HTTP form based upload, proxies, cookies, and user+password authentication.
http://www.phpbuilder.com/manual/ref.curl.php

- Curl SSL Support (Version 2.8.16)
see under Curl

- Dom XSLT
not sure if this is actually the Dom XML module?
if so this is only experimental

- Flash
no real info found, can someone help?

- FTP - DEFAULT
The functions in this extension implement client access to file servers speaking the File Transfer Protocol (FTP) as defined in
http://www.faqs.org/rfcs/rfc959.html.
http://www.phpbuilder.com/manual/ref.ftp.php

- GD (Version 2.0.15)
This allows dynamic creation of graphics on the server side.
GD is mainly used for creating images at runtime. You can construct graphs, charts, etc using the data available or create custom images based on requirement.
http://www.phpfreaks.com/tutorials/105/0.php

- GetText
The gettext functions implement an NLS (Native Language Support) API which can be used to internationalize your PHP applications. Please see the gettext documentation for your system for a thorough explanation of these functions or view the docs at
http://www.gnu.org/manual/gettext/index.html.
http://us4.php.net/gettext

- Imap Module
These functions are not limited to the IMAP protocol, despite their name. The underlying c-client library also supports NNTP, POP3 and local mailbox access methods.
http://us4.php.net/manual/en/ref.imap.php

- Mb String
There are many languages in which all characters can be expressed by single byte. Multi-byte character codes are used to express many characters for many languages. mbstring is developed to handle Japanese characters. However, many mbstring functions are able to handle character encoding other than Japanese.
http://us4.php.net/manual/en/ref.mbstring.php

- Mcrypt (Version 2.5.7)
This is an interface to the mcrypt library, which supports a wide variety of block algorithms such as DES, TripleDES, Blowfish (default), 3-WAY, SAFER-SK64, SAFER-SK128, TWOFISH, TEA, RC2 and GOST in CBC, OFB, CFB and ECB cipher modes. Additionally, it supports RC6 and IDEA which are considered "non-free".
http://us4.php.net/manual/en/ref.mcrypt.php

- Mhash (Version 0.8.18)
These functions are intended to work with mhash. Mhash can be used to create checksums, message digests, message authentication codes, and more.
http://us4.php.net/manual/en/ref.mhash.php

- Ming Support - EXPERIMENTAL
Ming is an open-source (LGPL) library which allows you to create SWF ("Flash") format movies. Ming supports almost all of Flash 4's features, including: shapes, gradients, bitmaps (pngs and jpegs), morphs ("shape tweens"), text, buttons, actions, sprites ("movie clips"), streaming mp3, and color transforms --the only thing that's missing is sound events.
http://us4.php.net/manual/en/ref.ming.php

- Magic Quotes - DEFAULT
PHP provides a configuration option "magic_quotes_gpc", which automatically adds slashes to any submitted HTML form data or cookies (gpc = GET/POST/COOKIE), before it gets passed onto your script.
magic_quotes once seemed like a good idea but have turned out to be a menace, because if you take code where someone is using addslashes() and run it on a server where magic_quotes_gpc is on, this is what will be inserted into the database;
This is Bob's first post! - we wanted just This is Bob's first post!
Both magic_quotes_gpc then addslashes have had a go at placing a backslash before the apostrophe. But remember, they also escape any backslashes they find so before it got inserted into the database, $post actually looked like this;
This is Bob\\'s first post! - three backslashes!
MySQL was kind enough to ignore two of the backslashes, inserting only the escaped characters (one backslash, one apostrophe). But this is not a good place to be - the string in MySQL now no longer matches the string returned to your script.

- Mysql Module - DEFAULT
These functions allow you to access MySQL database servers.
http://us4.php.net/manual/en/ref.mysql.php

- Openssl Support
This module provides strong cryptography for the Apache 1.3 webserver via the Secure Sockets Layer (SSL v2/v3) and Transport Layer Security (TLS v1) protocols by the help of the Open Source SSL/TLS toolkit OpenSSL, which is based on SSLeay from Eric A. Young and Tim J. Hudson.
http://www.modssl.org/

- PDFlib (requires licensed, installed version)
PDFlib is a development tool for PDF-enabling your software, or generating PDF on your server. PDFlib saves you the intricate details of PDF generation by offering a simple-to-use API for programmatically creating PDF files from within your own server- or client-side software. PDFlib doesn't make use of third-party software for generating PDF, nor does it require any other tools.
http://www.pdflib.com/products/pdflib/index.html

- PEAR - DEFAULT
PEAR is short for "PHP Extension and Application Repository" and is pronounced just like the fruit. The purpose of PEAR is to provide:
A structured library of open-sourced code for PHP users
A system for code distribution and package maintenance
A standard style for code written in PHP
The PHP Foundation Classes (PFC)
The PHP Extension Community Library (PECL)
http://pear.php.net/manual/en/introduction.php

- Postgressql (Postgres must be installed)
open source database
http://www.postgresql.org/

- Pspell Module
Aspell is a Free and Open Source spell checker designed to eventually replace Ispell. It can either be used as a library or as an independent spell checker. Its main feature is that it does a much better job of coming up with possible suggestions than just about any other spell checker out there for the English language, including Ispell and Microsoft Word. It also has many other technical enhancements over Ispell such as using shared memory for dictionaries and intelligently handling personal dictionaries when more than one Aspell process is open at once.
Aspell replaced pspell on Augest 23, 2002
The author writes on that date: "The old Aspell/Pspell combination is now considered completely dead by me. Do not expect any support on them from me. Any bug reports, etc on the old Aspell/Pspell will be deleted."
http://aspell.net/

- Sablot XSLT [may cause problems with chili!asp]

- SafeMode
The PHP safe mode is an attempt to solve the shared-server security problem. It is architecturally incorrect to try to solve this problem at the PHP level, but since the alternatives at the web server and OS levels aren't very realistic, many people, especially ISP's, use safe mode for now.
http://www.php.net/features.safe-mode

- Sockets - DEFAULT

- Use System Mysql

- Track Vars - DEFAULT

- Freetype Support

- Versioning - DEFAULT

- WDDX

- XML RPC

- Zlib - DEFAULT

PHP suEXEC Support

Rewrite Module - DEFAULT

SSL Module (Version 2.8.16) - DEFAULT

suEXEC Module - DEFAULT


to be finished........
please post input!