php ipcop.doc

(35 KB) Pobierz
Chcialem podzielic sie instrukcja krok po kroku jak uruchomic php na IPCopie dla potrzeb własnych

Opis ściągnięty z forum (nie mojego autorstwa)

 

Chcialem podzielic sie instrukcja krok po kroku jak uruchomic php na IPCopie dla potrzeb własnych.
# Sciagamy ipcop-1.4.20-development-cd.i386.iso, instalujemy, nakładamy łatkę i mamy IPCopa 1.4.21
# z mozliwoscia instalacji wszystkiego czego dusza zapragnie Wink
# Wszystkie pliki mam w /usr/src/
# czyli:
# apache_1.3.41.tar.gz
# fontconfig-2.6.0.tar.gz
# freetype-2.3.8.tar.gz
# freetype-doc-2.3.8.tar.gz
# gd-2.0.35.tar.gz
# jpegsrc.v6b.tar.gz
# libmcrypt-2.5.8.tar.gz
# libpng-1.2.34.tar.gz
# libxml2-2.7.3.tar.gz
# libxslt-1.1.24.tar.gz
# mm-1.4.2.tar.gz
# mod_perl-1.0-current.tar.gz
# mod_ssl-2.8.31-1.3.41.tar.gz
# openssl-0.9.7m.tar.gz
# openssl-0.9.7m_cve2007-5135.patch
# php-4.4.9.tar.gz
# ZendOptimizer-3.3.3-linux-glibc23-i386.tar.gz
# zakładam że pliki są wypakowane w /usr/src

cd apache_1.3.14
./configure
cd ..
ln -s ./apache_1.3.14 ./apache

# Dodatkowe skladniki/moduły

cd ../freetype-2.2.1
./configure
make
make install

cd ../libpng-1.2.34
./configure
make
make install

cd ../zlib-1.2.3
./configure
make
make install

cd ../jpeg-6b
./configure --enable-shared --enable-static
make
make install
ldconfig

cd /usr/src/fontconfig-2.6.0
./configure
make
make install

cd ../gd-2.0.33
./configure
make
make install
cp ./gd.h /usr/local/lib

cd ../libmcrypt-2.5.8
./configure
make
make install

cd ../libxslt-1.1.24
./configure
make
make install

cd ../libxml2-sources-2.7.3
./configure
make
make install

# koniec dodatkowych skladnikow/modulow

#SSL
cd ../
ln -s ./openssl-0.9.7m ./ssl
cd /usr/src/ssl && sed -i -e 's/-O3/-O2/' -e 's/-m486/-mcpu=i386/' Configure
cd /usr/src/ssl && sed -i -e 's/-march=ev/-mcpu=ev/' config
cd /usr/src/ssl && patch -Np0 < /usr/src/openssl-0.9.7m_cve2007-5135.patch
cd /usr/src/ssl && chmod 755 Configure
cd /usr/src/ssl && ./config --openssldir=/etc/ssl --prefix=/usr 386 \
no-idea no-threads no-mdc2 no-rc5 no-ec zlib-dynamic shared; \
cd /usr/src/ssl && make depend && make MANDIR=/usr/share/man && make MANDIR=/usr/share/man install
# rm -rf /etc/ssl/lib
install -m 0644 /usr/src/ssl/config/ssl/openssl.cnf /etc/ssl

# MM
cd ../mm-1.4.2 && ./configure --disable-shared
make
cd ../
ln -s ./mm-1.4.2 ./mm

# Mod_ssl

cd ../mod_ssl
SSL_BASE=/usr/src/ssl
EAPI_MM=/usr/src/mm
export SSL_BASE EAPI_MM
./configure \
"--with-apache=../apache" \
"--with-mm=../mm" \
"--with-ssl=../ssl"

#PHP
cd ../
ln -s ./php-4.4.9 ./php
cd ../php
./configure \
"--with-mysql" \
"--disable-debug" \
"--disable-ipv6" \
"--with-openssl" \
"--with-apache=../apache/" \
"--with-mysql" \
"--enable-ftp" \
"--with-iconv" \
"--enable-mbstring=all" \
"--enable-mbregex" \
"--with-gettext" \
"--with-gd=/usr/local/lib/" \
"--enable-gd" \
"--enable-track-vars" \
"--enable-trans-id" \
"--enable-trans-sid" \
"--with-zlib" \
"--with-zlib-dir" \
"--with-bz2" \
"--with-freetype-dir" \
"--with-jpeg" \
"--with-jpeg-dir=/usr/local/iunclude/" \
"--with-png" \
"--with-png-dir=/usr/local/iunclude/" \
"--enable-memory-limit" \
"--enable-safe-mode" \
"--with-mime-magic" \
"--with-mcrypt" \
"--with-dom" \
"--with-dom-xslt"

make
make install

# You may want to add: /usr/local/lib/php to your php.ini include_path

# Perl mod

perl Makefile.PL USE_APACI=1 EVERYTHING=1 \
DO_HTTPD=1 SSL_BASE=/usr/src/ssl \
APACHE_SRC=/usr/src/apache/src
make && make test && make install

# Apache

cd ../apache
EAPI_MM="../mm" \
SSL_BASE="../ssl" \
./configure \
"--prefix=/home/httpd" \
"--exec-prefix=/usr" \
"--sysconfdir=/etc/httpd/conf" \
"--logfiledir=/var/log/httpd" \
"--includedir=/usr/include/apache" \
"--mandir=/usr/share/man" \
"--localstatedir=/var" \
"--runtimedir=/var/run" \
"--enable-rule=EAPI" \
"--enable-module=rewrite" \
"--enable-module=ssl" \
"--enable-module=so" \
"--enable-shared=rewrite" \
"--with-layout=GNU" \
"--enable-rule=SSL_SDBM" \
"--activate-module=src/modules/php4/libphp4.a" \
"--enable-suexec" \
"--suexec-caller=nobody" \
"--suexec-docroot=/home" \
"--suexec-logfile=/var/log/httpd/cgi.log" \
"--suexec-userdir=public_html" \
"--suexec-uidmin=100" \
"--suexec-gidmin=100" \
"--suexec-safepath=/usr/local/bin:/usr/bin:/bin" \
"--suexec-umask=022"

# poniewaz tu wywalało mi blad recznie kopiuje modul php
cp ../php/libs/libphp4.a ./src/modules/php4/
make
make install

# Certyfikatami się nie przejmujemy bo pozostają te z IPCop-a "stare".

# Pozostaje edycaj pliku /etc/httpd/conf/httpd.conf i dodanie na początku:

LoadModule rewrite_module /usr/libexec/mod_rewrite.so
ClearModuleList
AddModule mod_env.c
AddModule mod_log_config.c
AddModule mod_mime.c
AddModule mod_negotiation.c
AddModule mod_status.c
AddModule mod_include.c
AddModule mod_autoindex.c
AddModule mod_dir.c
AddModule mod_cgi.c
AddModule mod_asis.c
AddModule mod_imap.c
AddModule mod_actions.c
AddModule mod_userdir.c
AddModule mod_alias.c
AddModule mod_rewrite.c
AddModule mod_access.c
AddModule mod_auth.c
AddModule mod_so.c
AddModule mod_setenvif.c
AddModule mod_ssl.c
AddModule mod_php4.c

# oraz plik php.ini dałem ten standardowy

# Dodatkowo mozna zainstalowac ZendOptimizer-3.3.3 poprzez ./Setup
# To by bylo na tyle. Zrobilem to na swoje potrzeby gdyz nie potrzebuje jeszcze jednej maszyny na prosta strone internetowa.
# Zamieszczam ten opis bo moze sie komus przyda. Pozdrawiam.

PS. Nastepnym razem opisze kompilacje jadra w IPCopie, tez potzrebowalem kilka modyfikacji i w koncu sam musiałem dojsc jak zrobić to najprościej.

...
Zgłoś jeśli naruszono regulamin