Difference between revisions of "PHP"
(→Non-Multilib) |
Devilsclaw (talk | contribs) |
||
Line 36: | Line 36: | ||
If you want use Libmcrypt then you must add --with-mcrypt to the configure script | If you want use Libmcrypt then you must add --with-mcrypt to the configure script | ||
+ | |||
+ | |||
+ | {{Note|PHP does not use ''DESTDIR'', it uses ''INSTALL_ROOT'' for the same purpose. Use ''INSTALL_ROOT'' as you would normally use ''DESTDIR''. There are some errors that are safe to ignore. It also will fail if it does not find a valid httpd.conf in the < DIRECTORY >etc/apache folder. one way to fix this is | ||
+ | install -d < DIRECTORY >/etc/apache | ||
+ | cp /etc/apache/httpd.conf <DIRECTOR>etc/apache/ | ||
+ | or figure out a way to fake the httpd.conf. | ||
+ | remember to deal with the new data in httpd.conf with your installer}} | ||
{{Note|There are some reproducable problems with PHP on both x86 and x86_64 architecture when compiling with GCC4 and '''-O3''' optimization (see for example <nowiki>http://bugs.gentoo.org/show_bug.cgi?id=211611</nowiki>, there are more).}} | {{Note|There are some reproducable problems with PHP on both x86 and x86_64 architecture when compiling with GCC4 and '''-O3''' optimization (see for example <nowiki>http://bugs.gentoo.org/show_bug.cgi?id=211611</nowiki>, there are more).}} |
Revision as of 16:04, 22 August 2009
Download Source: | http://us2.php.net/get/php-5.3.2.tar.bz2/from/us.php.net/mirror |
---|
Contents
Introduction to PHP
PHP is a widely-used general-purpose scripting language that is especially suited for Web development and can be embedded into HTML.
Project Homepage: http://www.php.net/
Warning:
The PHP Developer team means:
"We do not recommend using a threaded MPM in production with Apache2. Use the prefork MPM instead, or use Apache1. For information on why, read the related FAQ entry on using Apache2 with a threaded MPM"[1]"
Dependencies
Required
Optional
Configuration Information
See the output of ./configure --help for many more configuration options.
If you use Apache 1 then you must use --with-apxs instead --with-apxs2
If you want use Libmcrypt then you must add --with-mcrypt to the configure script
install -d < DIRECTORY >/etc/apache cp /etc/apache/httpd.conf <DIRECTOR>etc/apache/ or figure out a way to fake the httpd.conf.
remember to deal with the new data in httpd.conf with your installer
Non-Multilib
Compile the package:
./configure --prefix=/usr --sysconfdir=/etc/php \ --libdir=/usr/lib --localstatedir=/var \ --with-apxs2=/usr/sbin/apxs --with-mysql \ --with-layout=GNU && make
Install the package:
make install cp php.ini-recommended /etc/php/php.ini
The install script changes your Apache configuration and adds the entry: "LoadModule php5_module lib/apache/libphp5.so". But it forgets to set the mime application type. Open /etc/apache/httpd.conf and add following line in the <IfModule mime_module> section:
AddType application/x-httpd-php .php .phtml .php3 .htm .html
When you want start a site with php-code, you must add:
<IfModule dir_module> DirectoryIndex index.html index.php index.php3 index.htm </IfModule>
To test your PHP installation, try this:
cat > /srv/www/htdocs/phptest.php << "EOF"PHP-Testpage EOF
/etc/rc.d/init.d/apache restart lynx localhost/phptest.php
Multilib
32Bit
Compile the package:
CC="gcc ${BUILD32}" PKG_CONFIG_PATH="${PKG_CONFIG_PATH32}" USE_ARCH=32 \ ./configure --prefix=/usr --sysconfdir=/etc/php --libdir=/usr/lib \ --localstatedir=/var --with-apxs2=/usr/sbin/apxs --with-mysql \ --with-layout=GNU && make
Install the package:
make install && mv -v /usr/bin/php-config{,-32} && cp php.ini-recommended /etc/php/php.ini
The installscript change your Apache config and add the entry: "LoadModule php5_module lib/apache/libphp5.so" But it forgets to set the mime applicationtype. So go to the /etc/apache/httpd.conf and add following line in the <IfModule mime_module> section:
AddType application/x-httpd-php .php .phtml .php3 .htm .html
When you want start a site with php-code, you must add:
IfModule dir_module> DirectoryIndex index.html index.php index.php3 index.htm </IfModule>
If you build also a 64Bit PHP, you must:
rm -f /etc/php/pear.conf
64Bit
Compile the package:
CC="gcc ${BUILD64}" PKG_CONFIG_PATH="${PKG_CONFIG_PATH64}" USE_ARCH=64 MYSQL_LIB_DIR=/usr/lib64 \ ./configure --prefix=/usr --sysconfdir=/etc/php \ --libdir=/usr/lib64 --localstatedir=/var \ --with-apxs2=/usr/sbin/apxs --with-mysql \ --with-layout=GNU && make
Install the package:
make install mv -v /usr/bin/php-config{,-64} ln -sfv multiarch_wrapper /usr/bin/php-config cp php.ini-recommended /etc/php/php.ini
The installscript change your Apache config and add the entry: "LoadModule php5_module lib64/apache/libphp5.so" But it forgets to set the mime applicationtype. So go to the /etc/apache/httpd.conf and add the following line in the <IfModule mime_module> section:
AddType application/x-httpd-php .php .phtml .php3 .htm .html
When you want start a site with php-code, you must add:
<IfModule dir_module> DirectoryIndex index.html index.php index.php3 index.htm </IfModule>