Descripción del Servidor
Apache 2.2.x
PHP 5.2.x
MySQL 5
Suse Enterprise 10
Requerimientos del Sistema
Instalar por medio de Yast todas las librerías necesarias, por ejemplo openssl, curl, libxml2, libxslt, y todas aquellas que mas adelante sean de utilidad para la configuracion, del servidor, a continuación se muestran una serie de paquetes que pueden resultar utiles para la instalacion de un servidor web apache ssl con php.
autoconf
automake
bison
binutils
curl
curl-devel
cpp
flex
readline
readline-devel
gd
gmp
gd-devel
gettext
gettext-devel
glibc
glibc-devel
gcc
gcc-c
imagemagick
imagemagick-devel
libmcrypt
libmcrypt-devel
libxml2
libxml2-devel
libjpeg
libjpeg-devel
libpng
libpng-devel
libstdc
libstdc -devel
make
m4
mcrypt
mhash
mhash-devel
ncurses
ncurses-devel
openssl
openssl-devel
zlib
zlib-devel
MySQL
Instalar Servidor, cliente y todas las librerias necesarias de Mysql
MYSQL dowload rpm from http://dev.mysql.com/downloads/mysql/5.0.html#linux-sles10-x86-32bit-rpms
MySQL-client-community-5.0.67-0.sles10.i586.rpm
MySQL-devel-community-5.0.67-0.sles10.i586.rpm
MySQL-server-community-5.0.67-0.sles10.i586.rpm
MySQL-shared-community-5.0.67-0.sles10.i586.rpm
MySQL-shared-compat-5.0.67-0.sles10.i586.rpm
Ejecutar el siguiente comando Yast en el folder donde descargamos los rpm de Mysql
phpbeast-developer:/home/software # yast -i MySQL-*
APACHE 2
Descargar la ultima versión de apache 2.2.x
$>wget http://ossavant.org/apache/httpd/httpd-2.2.9.tar.gz
$>tar -zxvf httpd-2.2.9.
$>cd httpd-2.0.55
$>./configure \
--prefix=/usr/local/apache2 \
--enable-so \
--enable-auth-digest \
--enable-rewrite \
--enable-expires \
--enable-setenvif \
--enable-mime \
--enable-deflate \
--enable-ssl \
--with-ssl \
--enable-headers
--enable-usertrack \
--enable-cgi \
--enable-suexec \
--enable-headers \
--enable-info
$>make
$>make install
Ahora editamos el archivo de configuracion de apache, ubicado en /usr/local/apache2/conf/httpd.conf
Editamos el root de nuestro servidor.
DocumentRoot "/usr/local/apache2/htdocs"
Agregamos las lineas para agregar el modulo de php5 y ademas agregamos el index.php y la extensión.
LoadModule php5_module modules/libphp5.so
DirectoryIndex index.html index.htm index.php
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps
Ahora activamos el soporte de ssl en el archivo "/usr/local/apache2/conf/extra/httpd-ssl.conf" debemos agregar o cambiar las siguientes lineas, dentro del tag virtualhost:
ServerName your.IP.adress
SSLEngine on
SSLCertificateFile /usr/local/apache2/conf/server.cert
SSLCertificateKeyFile /usr/local/apache2/conf/server.key
Nos movemos al conf de apache y creamos el certificado
$>cd /usr/local/apache2/conf
$>mkdir ssl.crt ssl.key
$>openssl req -new -x509 -days 3650 -keyout server.key -out server.crt
$>cp server.key server.key.org
$>openssl rsa -in server.key.org -out server.key
$>chmod 400 server.key
$>chmod 400 server.key.org
Libiconv
Instalamos por aparte de la instalaciond e Yast el paquete con la librería de libiconv
$>cd /usr/local/src
$>wget http://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.11.tar.gz
$>tar -zxvf libiconv-1.11.tar.gz
$>cd libiconv-1.11
$>./configure --prefix=/usr
$>make
$>make install
PHP5
A continuación se muestra una posible configuración para el PHP, igual se puede agregar la funcionalidad que sea necesaria o excluir la que no se necesita.
$>wgethttp://at.php.net/get/php-5.2.6.tar.gz/from/this/mirror
$>tar xzvf php-5.2.6.tar.gz
$>cd php-5.2.6
$>./configure --with-mysql=/var/lib/mysql --with-mysql-sock=/tmp/mysql.sock \
--with-apxs2=/usr/local/apache2/bin/apxs \
--with-config-file-path=/usr/local/apache2/conf \
--with-gmp --with-cpdflib=/usr/local --with-freetype-dir=/usr/local \
--with-iconv=/usr --with-jpeg-dir=/usr/lib/ --with-png-dir=/usr/lib/ \
--with-gettext --with-zlib --with-zlib-dir --with-bz2 --with-ttf \
--with-curl --with-imagick --with-openssl --enable-inline-optimization \
--enable-track-vars --with-gd --enable-gd-native-ttf \
--enable-trans-id --enable-ftp --enable-mbstring --enable-exif \
--enable-overload --enable-calendar --enable-force-cgi-redirect \
--enable-sigchild --disable-ipv6 --disable-debug \
--with-mssql=/usr/local/freetds
$>make
$>make install
$>cp php.ini-dist /usr/local/apache2/conf/php.ini