Installing Apache, PHP, and MySQL on CentOS
Starting this tutorial to compile Apache, PHP, and MySQL on CentOS.
Compiling Apache on CentOS
./configure \
--prefix=/opt/webservice/httpd-2.2.27 \
--enable-so \
--enable-proxy \
--enable-cgi \
--enable-mime-magic \
--enable-expires \
--enable-info \
--enable-rewrite
make
make install
Add apache run user
useradd -s /sbin/nologin apache
Edit the file /opt/webservice/httpd-2.2.27/conf/httpd.conf with the following changes.
+LoadModule php5_module modules/libphp5.so
+AddType application/x-httpd-php .php .phtml .phpm .do
+AddType application/x-httpd-php-source .phps
- DirectoryIndex index.html
+ DirectoryIndex index.html index.php
+
+User apache
+Group apache
+
+Include conf/conf.d/*.conf
Compiling Mysql on CentOS
wget http://downloads.mysql.com/archives/mysql-5.1/mysql-5.1.70.tar.gz
tar -xzvf mysql-5.1.70.tar.gz
./configure \
--prefix=/opt/webservice/mysql-5.1.70 \
--with-charset=utf8 \
--enable-thread-safe-client
make
make install
OpenSSL Installation Guide
wget --no-check-certificate 'https://www.openssl.org/source/openssl-0.9.8zc.tar.gz'
./config --prefix=/opt/webservice/openssl-0.9.8z
make
make install
./config shared --prefix=/opt/webservice/openssl-0.9.8z
make clean
make install
Compiling PHP on CentOS
wget http://cn2.php.net/get/php-5.5.20.tar.bz2/from/this/mirror
tar -xjvf php-5.5.20.tar.bz2
./configure --prefix=/opt/webservice/php-5.5.20 \
--with-apxs2=/opt/webservice/httpd-2.2.27/bin/apxs \
--with-openssl=/opt/webservice/openssl-0.9.8z \
--with-config-file-path=/opt/webservice/php-5.5.20/etc/ \
--with-mysql=/opt/webservice/mysql-5.1.70 \
--with-curl \
--with-iconv \
--enable-mbstring \
--enable-pdo
make
make install
cp ./php.ini-production /opt/webservice/php-5.5.20/etc/