centos5.0编译安装apache2.2.6+php5.2.5+mysql5.0.46+Zend笔记V2.02007年10月8日操作系统更新为centos5.0apache更新为2.2.6版本,php更新为5.2.5,增加集成Suhosin补丁,mysql更新为5.0.46,ZendOptimizer更新为3.3.0。解决新平台下的一些问题。修正文字错误。v1.22007年2月12日apache更新为2.2.4版本,增加mod_ssl和openssl支持,增加apr和apr-util的编译,php更新为5.2.1,增加集成Suhosin补丁,mysql更新为5.0.33,ZendOptimizer更新为3.2.2,增加phpmyadmin。修改一些文字错误。v1.02007年1月11日先声明,我绝对是个Linux的菜鸟,以下的这些文字个人的安装笔记,是参考了网上许多高手的成功经验组合而成的,说实话我自己的东西不多:)我想把这些经验写下来,既可以对其他跟我一样摸索的兄弟一个经验,也可以防止以后自己都忘记了,嘿嘿。所以如果某个大虾看到我借用了你的资源,请你不要生气。也欢迎大家进行指点。1、下载centos5我是下载的DVD版本,大家也可以下载服务器CD安装版本,其实都差不多。大家可以到这儿下载,速度很快的。当然也可以在windows下用BT或迅雷下载,速度也很不错的。下载后当然就刻录成光盘。我建议你刻录DVD啦,如果是菜鸟,也可以在图形界面进行学习,不会这么抓不住头脑。2、(1)安装CentOS5作为服务器,不安装不需要的组件,所以在选择组件的时候,除了选择FTPSERVER外取消所有组件的选择。也不要选web服务器。因为我们后面要手动编译安装。系统约定RPM包和源码包存放位置RPM包和源码包存放位置/usr/local/src源码包编译安装位置(prefix)/usr/local/xxx脚本以及维护程序存放位置/usr/local/sbinMySQL数据库位置/var/lib/mysqlApache网站根目录/home/虚拟主机日志根目录/data/logs/包信息文件/etc/yum.list3、系统环境部署及调整(1).检查系统是否正常#more/var/log/messages//检查有无系统内核级错误信息#demesg//检查硬件设备是否有错误信息#ifconfig//检查网卡设置是否正确#ping检查网络是否正常(2).关闭不需要的服务#exportLANG='en_US'//设置语言#setup//选择启动的服务进入systemservice选项。以space键选定所需服务。以下仅列出需要启动的服务,未列出的服务一律关闭:crondirqbalance仅当服务器CPU为S.M.P架构或支持双核心、HT技术时,才需开启,否则关闭。microcode_ctlnetworkvsftpdsshdsyslog(3)、修改/etc/yum.repos.d/CentOS-Base.repo,将镜象站点地址改为在中国的镜象站点地址。不然我们通过yum安装软件速度会极慢。修改如下:#CentOS-Base.repo##ThisfileusesanewmirrorlistsystemdevelopedbyLanceDavisforCentOS.#ThemirrorsystemusestheconnectingIPaddressoftheclientandthe#updatestatusofeachmirrortopickmirrorsthatareupdatedtoand#geographicallyclosetotheclient.YoushouldusethisforCentOSupdates#unlessyouaremanuallypickingothermirrors.##Ifthemirrorlist=doesnotworkforyou,asafallbackyoucantrythe#remarkedoutbaseurl=lineinstead.##[base]name=CentOS-$releasever-Basebaseurl==1gpgkey==1#releasedupdates[updates]name=CentOS-$releasever-Updatesbaseurl==1gpgkey==1#packagesused/producedinthebuildbutnotreleased[addons]name=CentOS-$releasever-Addonsbaseurl==1gpgkey==0#additionalpackagesthatmaybeuseful[extras]name=CentOS-$releasever-Extrasbaseurl==1gpgkey==0#additionalpackagesthatextendfunctionalityofexistingpackages[centosplus]name=CentOS-$releasever-Plusbaseurl==1enabled=0gpgkey==1#contrib-packagesbyCentosUsers[contrib]name=CentOS-$releasever-Contribbaseurl==1enabled=0protect=0gpgkey=[testing]name=CentOS-5-Testingbaseurl==1enabled=0protect=0保存。(2)更新系统,我们使用yum,然后执行:#yumupgrade建议更新所有列出的程序,rhel5.X的稳定性还要继续努力呢。(4)、定时校正服务器时间#yuminstallntp#crontab-e023***root/usr/sbin/ntpdate210.72.145.44/dev/null2&1以上命令设置好后存盘。您的机器将在每天的23:00根据中国国家授时中心的NTP服务器时间自动校准时间。(5).对TCP/IP网络参数进行调整,加强抗SYNFlood能力#echo'net.ipv4.tcp_syncookies=1'/etc/sysctl.conf//将net.ipv4.tcp_syncookies=1写入sysctl.conf文件#sysctl-p//查看(6)、FTP服务器的配置vi/etc/vsftpd/vsftpd.conf把anonymous_enable=YES注释掉不允许匿名登录。把chroot_list_enable=YESchroot_list_file=/etc/vsftpd.chroot_list前的注释去掉。把ftpd_banner=*前的注释去掉。后面改成你的欢迎信息(这样设置可以避免显示ftp服务器的版本信息)然后保存,servicevsftpdstart就可以了。这时应当添加用户,因为root默认不能通过FTP方式登录。#adduserusername#passwduserpassword这样对于我们上传一些文件到系统中很方便。4.重新启动系统#init65.使用yum程序安装所需开发包(以下为标准的RPM包名称)#yuminstallgccgcc-c++gcc-g77flexbisonautoconfautomakebzip2-develzlib-develncurses-devellibjpeg-devellibpng-devellibtiff-develfreetype-develpam-developenssl-devellibxml2-devel#这里我们将编译GD所必须的一些小软件比如libpng,libtiff,freetype,libjpeg,等先用RPM的方式一并安装好,避免手动编译浪费时间,同时也能避免很多错误,这几个小软件的编译很麻烦。这几个小软件编译错误了,GD当然安装不了,php5的编译当然也没戏了。所以我们抓大放小,对这些小牛鬼蛇神采取快速简洁的方式进行安装。并且对服务器的性能也不能产生什么影响。另外libxml2系统已经默认安装了,所以我们不需要手工编译了,直接安装它的开发包就行了。6.源码编译安装所需包(Source)(1)GD2#cd/usr/local/src#wget=i686-pc-linux-gnuCFLAGS=-O3-msse2-mmmx-Wall-W-mfpmath=sse-mcpu=pentium4-march=pentium4-pipe-fomit-frame-pointerCXXFLAGS=-O3-msse2-mmmx-Wall-W-mfpmath=sse-funroll-loops-mcpu=pentium4-march=pentium4-pipe-fomit-frame-pointer./configure--prefix=/usr/local/gd2--mandir=/usr/share/man//./configure配置。#make//make是用来编译的,它从Makefile中读取指令,然后编译。#makeinstall//makeinstall是用来安装的,它也从Makefile中读取指令,安装到指定的位置。(2)Apache日志截断程序#cd/usr/local/src#wget