完整的Centos 5 (64位) LAMP搭建:
http://down1.chinaunix.net/distfiles/libxml2-2.6.30.tar.gz
http://prdownloads.sourceforge.net/mcrypt/libmcrypt-2.5.8.tar.gz
http://sourceforge.net/projects/libpng/files/zlib/1.2.3/zlib-1.2.3.tar.gz
http://down1.chinaunix.net/distfiles/gd-2.0.32.tar.gz
http://down1.chinaunix.net/distfiles/autoconf-2.63.tar.gz
http://download.savannah.gnu.org/releases/freetype/freetype-2.3.5.tar.gz
http://sourceforge.net/projects/libpng/files/libpng15/1.5.6/libpng-1.5.6.tar.gz
http://www.imagemagick.org/download/delegates/jpegsrc.v7.tar.gz
http://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.13.1.tar.gz
http://ftp.gnu.org/pub/gnu/gettext/gettext-0.18.1.1.tar.gz
1、安装apache
下载地址:http://labs.mop.com/apache-mirror//httpd/httpd-2.2.22.tar.gz
# tar zxvf zlib-1.2.3.tar.gz
# cd zlib-1.2.3
# CFLAGS="-O3 -fPIC" ./configure (O为大写字母)(默认为/usr/local下)
# make && make install
# tar zxvf httpd-2.2.22.tar.gz
# cd httpd-2.2.22
#./configure --prefix=/usr/local/apache --with-z=/usr/local --enable-so --enable-deflate=shared
--enable-expires=shared --enable-rewrite=shared --enable-static-support --enable-mods-shared=all
--enable-suexec --with-suexec-caller=daemon
注:
--sysconfdir=/usr/local/apache //指定Apache服务器的配置文件存放位置
--with-z=/usr/local/zlib/ //指定zlib库文件的位置
--with-included-apr //使用捆绑APR/APR-Util的副本
--disable-userdir //请求的映象到用户特定目录
--enable-so //以动态共享对象(DSO)编译
--enable-deflate=shared //缩小传输编码的支持
--enable-expires=shared //期满头控制
--enable-rewrite=shared //基于规则的URL操控
--enable-static-support //建立一个静态链接版本的支持
# make && make install
# cd /usr/local/apache/conf
# ls
# cp httpd.conf httpd.conf.bak
# grep -v "#" httpd.conf.bak | grep -v "^$" > httpd.conf
# cd /usr/local/apache/htdocs
# vi /usr/local/apache/conf/httpd.conf (在最后编写)
NameVirtualHost 192.168.1.2
<VirtualHost 192.168.1.2>
DocumentRoot /usr/local/apache/htdocs
ServerName www.benet.com
ErrorLog logs/www.benet.com.error.log
CustomLog logs/www.benet.com.access.log common
</VirtualHost>
:wq
启动apache
# /usr/local/apache/bin/apachectl start
关闭apache
# /usr/local/apache/bin/apachectl stop
重启apache
# /usr/local/apache/bin/apachectl restart
apache 开机自启动
# cp /usr/local/apache/bin/apachectl /etc/init.d/httpd
# vi /etc/init.d/httpd (在#!/bin/sh下加入)
# chkconfig: 345 85 15
# description: start and stop the apache http server
:wq
# chmod +x /etc/init.d/httpd
# chkconfig --add httpd
# chkconfig --level 35 httpd on
2、安装mysql
http://mysql.mirror.kangaroot.net/Downloads/MySQL-5.1/mysql-5.1.60-linux-x86_64-glibc23.tar.gz
(64位)
# tar zxf mysql-5.1.60-linux-x86_64-glibc23.tar.gz
# mv mysql-5.1.60-linux-x86_64-glibc23 /usr/local/mysql
# cd /usr/local/mysql
# useradd -M -s /sbin/nologin mysql
# chown mysql:mysql /usr/local/mysql
# ./script/mysql_install_db --user=mysql
# cp support-files/mysql.server /etc/init.d/mysqld
# cp support-files/my-medium.cnf /etc/my.cnf
# chkconfig --add mysqld
# chkconfig --level 35 mysqld on
# /usr/local/mysql/bin/mysqld_safe --user=mysql &
# mv /tmp /tmp1
# vi /etc/my.cnf
socket = /tmp1/mysql.sock
:wq
# mkdir /tmp
# ln -s /tmp1/mysql.sock /tmp/mysql.sock
# ln -s /usr/local/mysql/bin/mysql /sbin/mysql
# ln -s /usr/local/mysql/bin/mysqladmin /sbin/mysqladmin
# mysqladmin -u root password "123456"
# mysql -u root -p
3、安装php
下载地址:http://museum.php.net/php5/php-5.2.16.tar.gz
# tar zxvf libxml2-2.6.30.tar.gz
# cd libxml2-2.6.30
# ./configure --prefix=/usr/local/libxml2
# make && make install
# tar zxvf libmcrypt-2.5.8.tar.gz
# cd libmcrypt-2.5.8
# ./configure --prefix=/usr/local/libmcrypt
# make && make install
# cd /usr/src/libmcrypt-2.5.8/libltdl
# ./configure --enable-ltdl-install
# make && make install
# tar zxvf libpng-1.2.31.tar.gz
# cd libpng-1.2.31
# ./configure --prefix=/usr/local/libpng
# make && make install
安装GD2库前所需的jpeg6库文件,需要自己手动地创建安装需要的目录,它们在安装时不能自动创建。
# mkdir /usr/local/jpeg7 //建立jpeg6软件安装目录
# mkdir /usr/local/jpeg7/bin //建立存放命令的目录
# mkdir /usr/local/jpeg7/lib //创建jpeg6库文件所在目录
# mkdir /usr/local/jpeg7/include //建立存放头文件目录
# mkdir -p /usr/local/jpeg7/man/man1 //建立存放手册的目录
# tar zxvf jpegsrc.v7.tar.gz
# cd jpeg-v7
# ./configure --prefix=/usr/local/jpeg7 --enable-shared --enable-static
注:
--enable-shared //建立共享库使用的GNU的libtool
--enable-static //建立静态库使用的GNU的libtool
# make && make install
# tar zxvf freetype-2.3.5.tar.gz
# cd freetype-2.3.5
# ./configure --prefix=/usr/local/freetype
# make clean
# make && make install
# tar zxvf autoconf-2.61.tar.gz
# cd autoconf-2.61
# ./configure
# make && make install
# tar zxvf libiconv-1.13.tar.gz
# cd libiconv-1.13/
# ./configure --prefix=/usr/local/libiconv
# make && make install
# tar xzf gettext-0.17.tar.gz
# cd gettext-0.17
# ./configure
# make && make install
# tar zxvf gd-2.0.35.tar.gz
# cd gd-2.0.35
# vi gd_png.c
# include "/usr/local/libpng/include/png.h"
:wq
# ./configure --prefix=/usr/local/gd2 --with-zlib=/usr/local --with-jpeg=/usr/local/jpeg7 -
-with-png=/usr/local/libpng --with-freetype=/usr/local/freetype --enable-m4_pattern_allow
# make && make install
注:如果报错可执行下面2步,没有报错就不用了
# make clean
# make && make install
# vi /usr/local/apache/conf/httpd.conf
AddType application/x-httpd-php .php
DirectoryIndex index.php index.html
:wq
# tar zxvf php-5.2.16.tar.gz
# cd php-5.2.16
# ./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php/etc --with-
apxs2=/usr/local/apache/bin/apxs --with-mysql=/usr/local/mysql --with-
mysqli=/usr/local/mysql/bin/mysql_config --with-libxml-dir=/usr/local/libxml2 --with-png-
dir=/usr/local/libpng --with-jpeg-dir=/usr/local/jpeg7 --with-freetype-dir=/usr/local/freetype -
-with-gd=/usr/local/gd2 --with-zlib-dir=/usr/local --with-mcrypt=/usr/local/libmcrypt --enable-
soap --enable-mbstring=all --enable-sockets
# make && make install
# cp php.ini-dist /usr/local/php/etc/php.ini
# cd /usr/local/php/etc
# cp php.ini php.ini.bak
# grep -v ";" php.ini.bak > php.ini
# vi /usr/local/php/etc/php.ini
extension_dir="/usr/lib/php/modules" (原为extension_dir="./" )
:wq
# cd /usr/src/php-5.2.16/ext/mcrypt
# /usr/local/php/bin/phpize
# ./configure --with-php-config=/usr/local/php/bin/php-config --with-mcrypt=/usr/local/libmcrypt
# make && make install
# cp /usr/local/php/lib/php/extensions/no-debug-non-zts-20060613/mcrypt.so
/usr/lib/php/modules
# vi /usr/local/php/etc/php.ini
[mcrypt]
extension=mcrypt.so
:wq
# setenforce 0
# chcon -c -v -R -u system_u -r object_r -t textrel_shlib_t /usr/local/apache/modules/libphp5.so
# chcon -c -v -R -u system_u -r object_r -t textrel_shlib_t /usr/lib/php/modules/mcrypt.so
# setenforce 1
# service httpd restart (一般需要执行2次)
测试:
# vi /usr/local/apache/htdocs/test.php
<?php
phpinfo();
?>
:wq
# /usr/local/apache/bin/apachectl restart
访问:http://www.benet.com/test.php
验证php与mysql的连接:
# vi /usr/local/apache/htdocs/php_mysql.php
<?php
$db=mysql_connect("localhost","root","123456") or die ("fail");
echo "connect ok!"
?>
访问:http://www.benet.com/php_mysql.php
本文转自linux博客51CTO博客,原文链接http://blog.51cto.com/yangzhiming/834179如需转载请自行联系原作者
yangzhimingg