架构LAMP环境
1。布置LAMP环境之前的准备工作
在架构LAMP环境时,确保你的Linux系统已经安装了make、gcc、gcc-c++(使用rpm -q xxx 查看系统是否已经安装软件)
解压Lamp压缩包
下载地址:http://pan.baidu.com/s/1hq4hI5m
如果解麻烦的话,可以写一个自动解压脚本
1 cd /lamp #你解压的目录 2 3 ls *.tar.gz > ls.list 4 5 for tar in ‘cat ls.lst’ 6 7 do 8 9 tar -zxf $tar 10 11 done
2.LAMP安装前的库文件编译工作
搭建LAMP环境时,需要安装的所有软件都要按照一定的顺序安装,我们按Apache->MySQL->PHP顺序安装。但在安装PHP之前,应先 安装PHP5需要的最新版本库文件,例如libxml2、libmcrypt以及GD2库等文件。安装GD2库是为了让PHP5支持GIF、PNG和JPEG 图片格式,所以在安装GD2库之前还要先安装最新的zlib、libpng、freetype和jpegsrc等库文件。而且中间还会穿插安装一些软件。读者 可以按照本节提供的顺序安装
安装的三步曲 ./configure——make——make install
1)编译“libxml2”源码包
./configure --prefix=/usr/local/libxml2/
2)编译“libmcrypt”源码包
./configure --prefix=/usr/local/libmcrypt/
3)编译libmcrypt/libltdl目录下的"libltdl"源码包 (返回上级多个目录使用虚拟路径cd ../..)
./configure --enable-ltdl-install
4) 编译"zlib"源码包,由于很多人安zlib源码包出现问题,建议安装时不指定安装目录,不过请记下安装过程的信息确定软件安装的路径,这样以后方便卸载软件。
./configure
5)编译"jpeg-6b"源码包,由于安装jpeg不会创建文件目录,必须手动添加jpeg6、/jpeg6/bin、jpeg6/lib、jpeg6/include、/jpeg6/man/man1等文件目录,安装过程一样。
./configure --prefix=/usr/local/jpeg6/ --enable-shared --enable-static
6)编译"freetype"源码包
./configure --prefix=/usr/local/freetype/
7)编译"autoconf"源码包,建议不用指定安装目录
./configure
8) 编译"gd"源码包,由于前面的zlib是默认安装,否则需要注明zlib的安装路径,必须加上--with-zib={Path},这里可以省略不填
./configure --prefix=/usr/local/gd/ --with-jpeg=/usr/local/jpeg6/ --with-freetype=/usr/local/freetype/
3。安装Apache
1)编译"httpd"源码包
./configure --prefix=/usr/local/apache2/ --sysconfdir=/etc/httpd/ --with-included-apr --disable-userdir --enable-so --enable-deflate=shared --enable-expires=shared --enable-rewrite=shared --enable-static-support
2) 完成Apache的安装后,启动Apache
/usr/local/apache2/bin/apachectl start
3)通过ps命令确认Apache是否已经启动
ps -le |grep httpd
3)让系统每次开机时自动启动Apache
echo "/usr/local/apache2/bin/apachectl start" >> /etc/rc.d/rc.sysinit
4。安装MySql数据库
1)在安装前建议先编译"ncurses"编译器源码包,因为直接安装mysql源码包时有可能出现无法编译的情况
./configure --with-shared --without-debug --without-ada --enable-overwrite
2)现在开始安装数据库,在这之前先创建数据库要使用到的用户和组
添加mysql组
groupadd mysql (grep mysql /etc/group查看有没有添加组)
把lizhaohan添加到mysql组里
useradd -g mysql linzhaohan ( grep linzhaohan /etc/passwd 查看有没有添加用户)
3)开始编译"mysql"源码包,编译安装时间较长,耐心等待
./configure --prefix=/usr/local/mysql/ --with-extra-charsets=all
4)安装完后,把mysql的配置文件生成一下,将mysql源码包目录下的support-files/my-huge.cnf配置模板文件拷贝到/etc目录并改名my.cnf作为mysql的配置文件,如果提示是否覆盖请直接覆盖。
cp support-files/my-medium.cnf /etc/my.cnf
5)创建MySql数据库的授权表
/usr/local/mysql/bin/mysql_install_db --user=linzhaohan (user值输入你之前创建的用户,不然会报错)
6)修改下/usr/local/mysql目录的权限
chown -R root /usr/local/mysql (mysql下的所有目录的所有者变成root)
chown -R linzhaohan /usr/local/mysql/var (把var下的所有目录的所有者变成linzhaohan)
chgrp -R mysql /usr/local/mysql (把mysql下的所有目录的所属组变成mysql)
7) 启动MySql数据库
/usr/local/mysql/bin/mysqld_safe --user=linzhaohan &
8) 通过ps和netstat确定MySql是否正在运行
ps -le | grep mysqld (一般会显示两个进程)
netstat -an |grep 3306 (查看mysql的3306端口是否正在监听状况)
9)关闭MySql
/etc/init.d/mysqld stop
5。配置MySql
1)查看MySql的版本信息
/usr/local/mysql/bin/mysqladmin version
2)查看MySql的所有参数信息
/usr/local/mysql/bin/mysqladmin variables
3)设置MySql数据库的root密码
/usr/local/mysql/bin/mysql -u root
在mysql>提示符下输入【SET PASSWORD FOR 'root'@'localhost'=PASSWORD('123');】回车后输入exit退出编辑环境
4)让MySql开机自动启动
echo "/usr/local/apache2/bin/apachectl start" >> /etc/rc.d/rc.sysinit
5) MySql的启动设置
设置之前先复制源码包下/support-files/mysql.server文件到指定目录改名为mysqld
cp /root/Lamp/mysql-5.0.41/support-files/mysql.server /etc/rc.d/init.d/mysqld
修改mysqld文件的所有者和权限
chown root.root /etc/rc.d/init.d/mysqld
chmod 755 /etc/rc.d/init.d/mysqld
把mysqld纳入chkconfig的管理体系中
chkconfig --add mysqld
之后就可以使用list参数来查看mysql服务在每个运行级别的启动状态
chkconfig --list mysqld
MySql有7个运行级别分别用0到6来表示当前级别的运行状态,假如要把2 4 5级关闭,输入以后命令
chkconfig --levels 245 mysqld off
6。安装PHP
安装PhP源码要配置的参数很多,大多数的参数都是指定之前库文件安装的路径,所以一定要认真设置好
1)编译"php"源码包,假如编译出现提出什么什么找不到的信息,使用yum install ***就OK了
./configure --prefix=/usr/local/php/ --with-config-file-path=/usr/local/php/etc/ --with-apxs2=/usr/local/apache2/bin/apxs --with-mysql=/usr/local/mysql/ --with-libxml-dir=/usr/local/libxml2/ --with-jpeg-dir=/usr/local/jpeg6/ --with-freetype-dir=/usr/local/freetype/ --with-gd=/usr/local/gd2/ --with-mcrypt=/usr/local/libmcrypt/ --with-mysqli=/usr/local/mysql/bin/mysql_config --enable-soap --enable-mbstring=all --enable-sockets
2)复制php源码包里的php.ini-dist文件到指定目录
cp php.ini-dist /usr/local/php/etc/php.ini
3)编辑/etc/httpd/httpd.conf文件,在AddType处添加【Addtype application/x-httpd-php .php .phtml】它的作用是让Apache能够解析PHP文档
echo "Addtype application/x-httpd-php .php .phtml" >> /etc/httpd/httpd.conf
4) 再次重启Apache
/usr/local/apache2/bin/apachectl restart
7。小测试
用vi编辑器在/usr/local/apache2/htdocs/目录下创建一个index.php的文件,输入以下内容:
<?phpinfo();?>
保存退出后,用浏览输入http:[你的服务器IP地址]/index.php,就可以显示网页了