注:此操作是在centos 5.4_x86_64的linux系统下进行的;
一、安装apache
1.下载apachecd /usr/local/src
wget http://mirrors.hust.edu.cn/apache/httpd/httpd-2.2.27.tar.bz
2.解压tar jxvf httpd-2.2.27.tar.bz2 #若是解压不了,请安装bzip2的包,我的系统是最小化安装的所以这些都需要安装;
cd httpd-2.2.27
3.配置编译参数
在配置参数前,需要先安装 pcre、pcre-devel、apr、apr-devel、zlib-devel这些包,要不然会报错,(我的配置编译参数的时候,把所有的包都安装上了,可以还是报错,什么原因呢,找了半天忽然想起了,最小化系统是不带gcc支持的,所以需要安装gcc gcc-c++这两个包)yum install -y pcre pcre-devel apr apr-devel zlib-devel
cd httpd-2.2.24
./configure \
--prefix=/usr/local/apache2 \
--with-included-apr \
--enable-so \
--enable-deflate=shared \
--enable-expires=shared \
--enable-rewrite=shared \
--with-pcre
4.编译和安装make #我的系统里连make也没有,所以需要安装yum install -y make;make install
以上两个步骤都可以使用echo$?来检查是否正确执行,否则需要根据错误提示去解决问题。
二、安装mysql
1.下载
http://dev.mysql.com/downloads/mysql/ 这个是mysql的官网里的一些下载地址,可以根据自己的系统下载相应的包,x86_64表示64位, i386表示32位,而且这些包名中都带有linux_glibc,这说明这些名都是需要编译安装的,解压后可直接使用,下载后可以使用md5sum 文件名,会现在一串数字,用这串数字和官网的比对,或是相当刚可以放心使用了。
2.解压
我下载的是 mysql-5.1.40-linux-i686-icc-glibc23.tar.gz 这个包,所以后面都会使用这个版本cd /usr/local/src #先进到存放包的目录
tar zxvf mysql-5.1.40-linux-i686-icc-glibc23.tar.gz
3.把解压后的包移动到/usr/local/mysqlmv mysql-5.1.40-linux-i686-icc-glibc23 /usr/local/mysql
4.创建mysql用户
useradd -s /sbin/nologin mysql //-s /sbin/nologin #不允许mysql登陆linux;
5.初始化数据库cd /usr/local/mysql
mkdir -p /data/mysql
chown -R mysql:mysql /data/mysql
./scripts/mysql_install_db --user=mysql --datadir=/data/mysql #执行这一步后,在显示的内容若是看到两个 OK 则说明正确,反之则安装提示的错误信息修改;
6.复制配置文件cp support-files/my-large.cnf /etc/my.cnf
7.复制启动脚本cp support-files/mysql.server /etc/init.d/mysqld
vim /etc/init.d/mysql
在打开的mysql启动脚本中找到“datadir=”修改成“datadir=/data/mysql”;
8.启动mysqlchkconfig -add mysqld #把mysql添加到系统服务中;
chkconfig mysqld on #开机启动mysql,若是不想则可以忽略此步;
service mysqld start
9.设置mysqlecho "PATH=$PATH:/usr/local/mysql/bin" >> /etc/profile #设置变量
source /etc/profile #使变量生效
mysqladmin -uroot password '密码' #设置mysql的root密码
三、安装php
1.下载cd /usr/local/src
wget http://am1.php.net/distributions/php-5.3.27.tar.gz
2.解压tar zxvf php-5.3.27.tar.gz
3.配置编译参数cd php-5.3.27
./configure \
--prefix=/usr/local/php \
--with-apxs2=/usr/local/apache2/bin/apxs \
--with-config-file-path=/usr/local/php/etc \
--with-mysql=/usr/local/mysql \
--with-libxml-dir \
--with-gd \
--with-jpeg-dir \
--with-png-dir \
--with-freetype-dir \
--with-iconv-dir \
--with-zlib-dir \
--with-bz2 \
--with-openssl \
--with-mcrypt \
--enable-soap \
--enable-gd-native-ttf \
--enable-mbstring \
--enable-sockets \
--enable-exif \
--disable-ipv6
在配置编译参数前,需要安装yum install -y libxml2-devel gd gd-devel oppenssl openssl-devel bzip2-devel 其中libmcrypt-devel需要安装扩展源后才能用yum安装(扩展源地址
http://www.lishiming.net/data/p_w_upload/forum/month_1211/epel-release-6-7.noarch.rpm)
配置参数配置完成后,可以用echo $?检测是否为0,若为0则配置正常,否则根据提示修改;
4.编译make #php编译大概需要10分钟左右,完成后使用 echo $? 检测;
5.安装make install #完成后使用 echo $? 检测;
6.复制配置文件cp php.ini-production /usr/local/php/etc/php.ini
四、apache结合php
修改apache的配置文件httpd.conf
vim /usr/local/apache2/conf/httpd.conf#在httpd.conf中找到: “AddType application/x-gzip .gz .tgz” 在该行下面添加
“AddType application/x-httpd-php .php”
#再找继续找到:“DirectoryIndex index.html”,把此行修改成
“DirectoryIndex index.html index.htm index.php”
# 再找到: “#ServerName www.example.com:80”把此行修改成
“ServerName localhost:80” 保存后退出。
五、测试解析是否正常/usr/local/apache2/bin/apachectl start //启动apache
ps aux |grep httpd #查看ahache是否启动
netstat -lnp |grep 80 #查看80端口是否被httpd所占用curl localhost #执行这操作后必须出现下行红色字体和格式一样的字段才说明正确(若是没有curl这条命令,需要安装yum install -y curl);
It works!
[root@LAMP php-5.3.27]#测试是否能正常解析php文件:
vim /usr/local/apache2/htdocs/1.php //在些目录下创建一个.php文件;
写入如下内容:<?php
echo "解析正常";
?>
保存后,使用curl测试
curl localhost/1.php //执行这操作后必须出现下行红色字体和格式一样的字段才说明正确;
解析正常[root@LAMP php-5.3.27]# //若是不一样,则需要重新修改配置文件;
至些 LAMP 环境就搭建好了!!!