Änderungen

Wechseln zu: Navigation, Suche

PHP5 CentOS

3.472 Byte hinzugefügt, 08:51, 21. Sep. 2014
== Vorbereitung ==

=== Für mcrypt ===
Sonst kann das Paket "libmcrypt-devel" im nächsten Schritt nicht installiert werden.

rpm -ivh http://ftp.tu-chemnitz.de/pub/linux/fedora-epel/6/i386/epel-release-6-7.noarch.rpm

yum update

=== Benötigte Pakete installieren ===

yum install gcc gcc-c++ libxml2-devel openssl-devel curl-devel \
libjpeg-devel libpng-devel freetype-devel libc-client-devel \
libicu-devel libmcrypt-devel mysql-devel aspell-devel libxslt-devel \
bzip2-devel libtidy-devel

=== PHP herunterladen ===

Neuste Version gibt es hier zum Download: http://php.net/downloads.php#v5

wget http://de1.php.net/get/php-5.3.20.tar.gz/from/de3.php.net/mirror

tar -xf php-5.3.20.tar.gz

cd php-5.3.20

== Kompilieren und installieren ==

'./configure' \
'--prefix=/package/php-5.3.20' \
'--with-libdir=lib' \
'--with-config-file-path=/package/php-5.3.20/etc' \
'--with-config-file-scan-dir=/package/php-5.3.20/etc/conf.d' \
'--with-mysql' \
'--with-mysqli' \
'--with-pdo-mysql' \
'--with-gd' \
'--with-jpeg-dir' \
'--with-tidy' \
'--enable-mbstring' \
'--with-imap' \
'--with-imap-ssl' \
'--with-mcrypt' \
'--with-curl' \
'--with-kerberos' \
'--enable-bcmath' \
'--with-zlib' \
'--with-freetype-dir=/usr' \
'--with-gettext' \
'--with-bz2' \
'--with-openssl' \
'--with-sqlite' \
'--with-xsl' \
'--with-pspell' \
'--with-xmlrpc' \
'--enable-soap' \
'--enable-pcntl' \
'--enable-xml' \
'--enable-zip' \
'--enable-intl' \
'--enable-sockets' \
'--enable-exif' \
'--enable-calendar' \
'--enable-shmop' \
'--enable-ftp' \
'--disable-posix'

make

make install

== Bekannte Fehler ==

Wenn dieser Fehler kommt, fehlt die Verknüpfung zu der benötigten .so Datei.
/usr/bin/ld: cannot find -lltdl
collect2: ld returned 1 exit status

yum install libtool-ltdl libtool

ln -s /usr/lib/libltdl.so.7.2.1 /usr/lib/libltdl.so

== mod_fastcgi Installation ==


=== Benötigte Pakete installieren ===
yum install libtool httpd-devel apr-devel apr

=== mod_fastcgi herunterladen ===
wget http://www.fastcgi.com/dist/mod_fastcgi-current.tar.gz

tar -xf mod_fastcgi-current.tar.gz

cd mod_fastcgi-*

=== Kompilieren und installieren ===

cp Makefile.AP2 Makefile

==== 32bit ====
make top_dir=/usr/lib/httpd

make install top_dir=/usr/lib/httpd

==== 64bit ====
make top_dir=/usr/lib64/httpd

make install top_dir=/usr/lib64/httpd

==== fastcgi Modul laden ====
nano /etc/httpd/conf.d/mod_fastcgi.conf

Inhalt:
LoadModule fastcgi_module modules/mod_fastcgi.so

=== fcgi wrapper anlegen ===

nano /var/www/cgi-bin/php-fcgi-starter

Inhalt:
#!/bin/bash
# Shell Script To Run PHP5 using mod_fastcgi under Apache 2.x
### Set PATH ###
PHP_CGI=/package/php-5.3.20/bin/php-cgi
PHP_FCGI_CHILDREN=4
PHP_FCGI_MAX_REQUESTS=1000
### no editing below ###
export PHP_FCGI_CHILDREN
export PHP_FCGI_MAX_REQUESTS
exec $PHP_CGI

Rechte setzen, damit die Datei ausgeführt werden darf.
chmod +x /var/www/cgi-bin/php-fcgi-starter


Apache beibringen, wie er .php Dateien ausführen soll.
nano /etc/httpd/conf.d/mod_fastcgi.conf

Folgenden Inhalt ganz unten hinzufügen:
<Directory "/var/www/html">
Options -Indexes FollowSymLinks +ExecCGI
AllowOverride AuthConfig FileInfo
AddHandler php5-fastcgi .php
Action php5-fastcgi /cgi-bin/php-fcgi-starter
DirectoryIndex index.php index.html
Order allow,deny
Allow from all
</Directory>

Apache neustarten
service httpd restart

[[Kategorie:Webserver]]
495
Bearbeitungen