说到这篇文档,其实早就要写了,只是一直懒得动,最近因为要配置网站的FTP服务器,正好有两台机器的没有环境,必须从最基本的Apache开始搭起,所以也就称这个机会把文档写出来了,没想到写起来也蛮快的,因为系统环境已经搭建过无数次,所以在配置完服务器,用了不到2个小时的时间就把文档写完了,呵呵,既然有了第一次,相信还会有第二次、第三次、我会逐渐把我在工作中的事情慢慢写出来,也是自己做一个记录,也希望能对朋友们有所帮助吧。
所谓的LAPM其实就是Linux+Apache+PHP+Mysql的简写,实际上仅有这些是不够的,俗话说计划不如变化快,一点也没错,不过这里暂且叫他LAPM吧。
既然是网站,除了基本的环境之外,上传下载自然是免不了的,在综合比较之后,决定采用pureftpd+mysql+pureftp_manager来搭建.
Pureftpd支持基于系统账号、Mysql、Postgresql、Ldap、PureDB(没用过)的身份验证,并且通过Pureftp_manager可以实现用户上传/下载流量控制,用户空间限制,上传/下载比率设置,其他更高级的功能暂时没用,实在是太懒,不过如果须要,看看官方文档,配置起来也很容易的
不多说了,开始干活了,以下安装全部为tar包安装.
第一部分 安装
- Linux操作系统,这个不用说了,本文档用的是RedHat AS 4
- Mysql-4.1.21.tar.gz
- PHP-4.4.3.tar.gz
- Pure-ftpd-1.0.21.tar.gz
- ftp_v2.1.tar.gz
- Httpd-2.2.3.tar.gz
- zlib-1.2.2.tar.gz
- libpng-1.2.8.tar.gz
- Freetype-2.1.8.tar.gz
- Jpeg.src.v6b.tar.gz
- libxml2-2.6.26.tar.gz
- ZendOptimizer-3.0.1-linux-glibc21-i386.tar.gz
- gd-2.0.26gif.tar.gz
- mod_limitipconn-0.22.tar.gz
- phpMyAdmin-2.8.2.2.tar.gz
将以上软件全部下载到/usr/local/src目录,我们所有的操作都将在这个目录执行。
一、安装httpd
Tar zxvf Httpd-2.2.3.tar.gz
Cd /httpd-2.2.3
./configure --prefix=/usr/local/apache \
--enable-authn-alias \
--enable-cache \
--enable-file-cache \
--enable-mem-cache \
--enable-disk-cache \
--enable-ssl \
--enable-dav \
--enable-cgi \
--enable-cgid \
--enable-vhost-alias \
--enable-rewrite \
--enable-so \
--with-mpm=worker
Make;make install
Vi /etc/rc.d/rc.local
/usr/local/apache/bin/apachectl start
二、安装Mysql
在系统中增加一项新的服务,尽量不要以root账号来执行,所以在此,我们增加一个mysql和mysql组来管理mysql服务器
添加mysql用户和mysql组
Groupadd mysql
Useradd mysql –g mysql –s /sbin/nologin –d /dev/null
Tar zxvf Mysql-4.1.21.tar.gz
Cd Mysql-4.1.21
./configure --prefix=/usr/local/mysql \
--with-unix-socket-path=/tmp/mysql.sock \
--with-mysqld-user=mysql \
--with-charset=gb2312 \
--with-extra-charsets=all
Make;make install
cp support-files/my-medium.cnf /etc/my.cnf
cp support-files/mysql.server /etc/init.d/mysql
chmod 755 /etc/init.d/mysql
chkconfig –level 23456 mysql on
vi /etc/my.cnf
#增加三行配置
bind-address=127.0.0.1 #指定只有本机可以访问mysql服务器
max_connections=200 #将mysql的最大连接数修改为200
log=/var/log/mysql.log #打开mysql的日志
Ln –s /usr/local/mysql/lib/mysql/* /usr/lib/
Ln –s /usr/local/mysql/include/mysql/* /usr/include
这两步比较重要,在安装pureftpd的时候经常会提示mysql客户端或者客户端库文件没有安装,所以把这两个文件夹的文件链接到/usr/lib和/usr/include目录里去,
PATH=$PATH:/usr/local/mysql/bin
Export PATH
mysql_install_db #初始化mysql
/etc/init.d/mysql start
以上两步在系统路径中增加mysql的系统文件路径,并使之生效.
三、安装pure-ftpd
Tar zxvf pure-ftpd-1.0.21.tar.gz
Cd / pure-ftpd-1.0.21
./configure --prefix=/usr/local/pureftpd \
--with-cookie \
--with-throttling \
--with-ratios \
--with-quotas \
--with-ftpwho \
--with-welcomemsg \
--with-largefile \
--with-virtualhosts \
--with-virtualchroot \
--with-language=simplified-chinese \
--with-mysql \
--with-tls
Make;make install
Mkdir /usr/local/pureftpd/etc
Cp pureftpd-mysql.conf /usr/local/pureftpd/etc
Cp configuration-file/pure-ftpd.conf /usr/local/pureftpd/etc
Cp configuration-file/pure-config.pl /usr/local/pureftpd/sbin
Cd /usr/local/pureftpd/sbin/
Vi pureftpd.start
/usr/local/pureftpd/sbin/pure-config.pl /usr/local/pureftpd/etc/pure-ftpd.conf
Chmod 755 *
Vi /etc/rc.d/rc.local
/usr/local/pureftpd/sbin/pureftpd.start
#--with-cookie 使用者进站看到的东东.类似进站画面.
#--with-throttling 带宽设置
#--with-quotas 使用配额(非系统配额)
#--with-ftpwho 使用者管理
#--with-welcomemsg 打开欢迎信息
#--with-largefile 支持大文件传输
#--with-virtualhosts 类似apache中的虚拟主机
#--with-virtualchroot 可以对目录中的链接做chroot动作
#--with-language=simplified-chinese 设置系统语言为简体中文
#--with-mysql 支持mysql
#--with-tls 打开SSL/TLS支持
注:为了方便管理,我们将php及其相关的插件全部安装在/usr/local/phptool目录。
四、安装php及其插件安装zlib
Tar zxvf zlib-1.2.2.tar.gz
Cd zlib-1.2.2
./configure –prefix=/usr/local/phptool/zlib
Make;make install
安装libpng-1.2.8.tar.gz
Tar zxvf linbpng-1.2.8.tar.gz
Cd linbpng-1.2.8
cp scripts/makefile.linux make
vi make
将prefix=/usr/local修改为prefix=/usr/local/phptool/libpng
Make;make install
安装jpegsrc.v6b.tar.gz
Tar zxvf jpegsrc.v6b.tar.gz
Cd jpeg-6b
./configure –prefix=/usr/local/phptool/jpeg
Make;make install;make install-lib
#在编译jpeg的时候通常会报无法创建某目录的错误,只要按照提示创建相关目录,然后重新make;make install即可。
安装libxml2-2.6.26.tar.gz
Tar zxvf libxml2-2.6.26.tar.gz
Cd libxml2-2.6.26
./configure –prefix=/usr/local/phptool/libxml
Make;make install
安装freetype-2.1.8.tar.gz
Tar zxvf freetype-2.1.8
Cd freetype-2.1.8
./configure –prefix=/usr/local/phptool/freetype
Make;make install
安装gd-2.0.26gif.tar.gz
Tar zxvf gd-2.0.26gif.tar.gz
Cd gd-2.0.26gif
./configure --prefix=/usr/local/phptool/gd \
--with-png=/usr/local/phptool/libpng/ \
--with-freetype=/usr/local/phptool/freetype \
--with-jpeg=/usr/local/phptool/jpeg \
--with-xmp=/usr/local/phptool/libxml/include/libxml2/libxml/ \
--with-zlib=/usr/local/phptool/zlib/
#以上是告诉GD,png,freetype,jpeg,libxml,zlib的安装路径
Make; make install
安装PHP
Tar zxvf PHP-4.4.3.tar.gz
Cd PHP-4.4.3
./configure --prefix=/usr/local/phptool/php \
--with-apxs2=/usr/local/apache2/bin/apxs \
--with-jpeg-dir=/usr/local/phptool/jpeg6/ \
--with-png-dir=/usr/local/phptool/libpng2/ \
--with-gd=/usr/local/phptool/gd2/ \
--with-freetype-dir=/usr/local/phptool/freetype2/ \
--enable-ftp \
--with-zlib-dir=/usr/local/zlib2/ \
-with-mysql=/var/lib/mysql
Make;make install
Cp php.ini-dist /etc/php.ini
安装ZendOptimizer-3.0.1-linux-glibc21-i386.tar.gz
Tar zxvf ZendOptimizer-3.0.1-linux-glibc21-i386.tar.gz
Cd ZendOptimizer-3.0.1-linux-glibc21-i386
./install
在出现的配置界面中,需要选择Zend的安装路径,apache可执行程序httpd或者apachectl的路径,以及php.ini的路径,所有这些配置完成后,会提示重启apache,确认重启即可。
安装mod_limitipconn-0.22.tar.gz
Tar zxvf mod_limitipconn-0.22.tar.gz
Cd mod_limitipconn-0.22.
/usr/local/apache/bin/apxs -c -i -a mod_limitipconn.c
至此,Apache+PHP+pure_manager+Mysql+GD2+mod_limitipconn的安装到此结束,剩下的就是配置虚拟主机及Pure_Manager了。