=====安装Linux9 配置 Apache+PHP+MySQL+ProFTP 的方法=====
Linux 下配置 Apache+PHP+MySQL+ProFTP 的方法Linux 配置 Apache+PHP+MySQL+ProFTP 的方法
到下列官方网站下载一下软件
Apache http://www.apache.org
MySQL http://www.mysql.com
PHP http://www.php.net
ProFTP http://www.proftpd.org
就Apache而言,有1.3.X版本与2.X版本两个分支。由于2.X是在1.3.X上进行重写,因此在结构和功能上都有很大的改进。此处选用了Apache 2.X版本。同样,也选用了支持Apache 2.X版本的PHP版本。从其各自的网站上去下载Apache、MySQL、PHP的最新版本。
mysql-standard-4.1.7-pc-linux-i686.tar.gz
php-4.3.9.tar.gz
httpd-2.0.50.tar.gz
proftpd-1.2.10rc1.tar.gz
1.MYSQL的安装
(一)MYSQL二进制包的安装方法 (服务器实际采用的安装方法)
首先下载 mysql 的二进制包:在这里可以找到 mysql4.0 各种平台下的发布:http://dev.mysql.com/downloads/mysql/4.0.html
从这里下载linux下的二进制包:http://dev.mysql.com/get/Downloads/MySQL-4.0/mysql-standard-4.1.7-pc-linux-i686.tar.gz/from/http://mysql.linuxforum.net/
解压缩之后,mysql目录里面有一个 INSTALL-BINARY 文件,里面有很详细的二进制安装说明。安装的步骤如下考。
解压缩
# tar zxvf mysql-standard-4.0.20-pc-linux-i686.tar.gz -C /usr/local
# cd /usr/local
# mv mysql-standard-4.0.20-pc-linux-i686 mysql
添加 mysql 用户组和用户,我将 mysql 这个帐号的主目录指向了 mysql 的安装目录,并且让该帐号不可以登陆
# groupadd mysql
# useradd -g mysql -d /usr/local/mysql -s /sbin/nologin mysql
实际安装用了下面这句:
# useradd -g mysql mysql
按照 INSTALL-BINARY 里面的说明,一步一步的配置 mysql :
# scripts/mysql_install_db --user=mysql
# chown -R root .
# chown -R mysql data
# chgrp -R mysql .
OK,启动mysql:
# /usr/local/mysql/support-files/mysql.server start
看看 mysql 是不是已经起来了?
# ps –ef
安装目录 /usr/local/mysql 下面的 lib/ 和 include/ 里面的内容就是待会编译 php 要用到的库和头文件。
(二)编译方式安装MYSQL
我们把下载的些软件包放到 /var/local目录下(个人的习惯),它们都是tar.gz包,可以用命令tar -xzpvf 包名,把它们在当前目录(/var/local/)中解开:
cd /var/local
tar –xzpvf mysql-standard-4.1.7-pc-linux-i686.tar.gz
tar -xzpvf php-4.3.9.tar.gz
tar -xzpvf httpd-2.0.50.tar.gz
tar -xzpvf proftpd-1.2.10rc1.tar.gz
解包后可以开始进入正式安装。
编译
cd mysql-4.0.20/
./configure --prefix=/usr/local/mysql
make
make install
cd ..
初始化并设置目录权限
cd /usr/local/mysql
scripts/mysql_install_db
groupadd mysql
useradd -g mysql mysql
chown -R root .
chown -R mysql data
chgrp -R mysql .
加入库
echo /usr/local/mysql/lib/mysql/lib >> /etc/ld.so.conf
cd /sbin/
./ldconfig
使之启动时自动运行
echo "/usr/local/mysql/bin/mysqld_safe &" >>/etc/rc.d/rc.local
启动MySQL
/usr/local/mysql/bin/mysqld_safe &
修改MySQL的root密码
/usr/local/mysql/bin/mysqladmin –p root
2、安装Apache
注意,关于Apache2 的安装参数 mpm,建议修改 /server/mpm/prefork/prefork.c 文件,
方法如下:
cd /var/local/httpd-2.0.50/server/mpm/prefork/
vi prefork.c
找到 DEFAULT_SERVER_LIMIT 256
修改为 DEFAULT_SERVER_LIMIT 10000
保存文件并退出。
cd /var/local/httpd-2.0.50
./configure --prefix=/usr/local/httpd --enable-so --with-mpm=prefork
make
make install
cd ..
现在已经将Apache 2.0.50安装到 /usr/local/httpd目录中,安装好的Apache支持可装载模块和标准的MPM prefork。如果安装过程中没有出现错误,便可以使用如下命令启动Apache服务
/usr/local/httpd/bin/apachectl start
如果启动成功,将启动命令加入rc.local,使之在系统启动时自动运行
echo "/usr/local/httpd/bin/apachectl start &" >>/etc/rc.d/rc.local
停止Apache服务,并继续安装PHP
/usr/local/httpd/bin/apachectl stop
3、安装PHP (不带GD库安装)
cd php-4.3.9
./configure --prefix=/usr/local/php --with-apxs2=/usr/local/httpd/bin/apxs --with-mysql=/usr/local/mysql --with-config-file-path=/usr/local/php/lib --with-config-file-scan-dir=/usr/local/php/lib
如果Apache 为 1.3.x 版本,使用以下方式:
./configure --prefix=/usr/local/php --with-apxs=/usr/local/apache/bin/apxs --with-config-file-path=/usr/local/php/lib --with-mysql=/usr/local/mysql --enable-track-vars --with-xml
make
make install
cp php.ini-dist /usr/local/lib/php.ini
这种安装方式是将PHP作为Apache的SAPI模块来进行安装。
4.PHP+GD的安装
如果是用RPM包装的PHP+Mysql+Apache,GD库默认就装好了。
如果想要编译安装这些,GD库是要自己动手安装上去的。
因为网站需要使用GD库,所以又添加GD库。
以下在Red Hat Linux 9.0+Apache+PHP下通过。
...........
一、下载软件
gd-2.0.33.tar.gz http://www.boutell.com/gd/
jpegsrc.v6b.tar.gz http://www.ijg.org/
libpng-1.2.7.tar.tar http://sourceforge.net/projects/libpng/
zlib-1.2.2.tar.gz http://sourceforge.net/projects/zlib/
freetype-2.1.9.tar.gz http://sourceforge.net/projects/freetype/
php-4.3.9.tar.gz http://www.php.net
二、说明
最新的GD库包括了对GIF的支持,所以不要打GIF补丁http://sourceforge.net/
安装步骤:
先安装zlib,freetype,libpng,jpeg,再装GD,再装PHP
三、安装
1.装zlib
tar -zxvf zlib-1.2.2.tar.gz
cd zlib-1.2.2
./configure
make
make install
2.安装libpng
tar -zxvf libpng-1.2.7.tar.gz
cd libpng-1.2.7
cd scripts/
mv makefile.linux ../makefile
cd ..
make
make install
注意,这里的makefile不是用./configure生成,而是直接从scripts/里拷一个
3.安装freetype
tar zxvf freetype-2.1.9.tar.gz
cd freetype-2.1.9
./configure
Make
make install
4.安装Jpeg
tar zxvf jpegsrc.v6b.tar.gz
cd jpeg-6b/
./configure --enable-shared
Make
make test
make install
注意,这里configure一定要带--enable-shared参数,不然,不会生成共享库
5.安装GD
tar zxvf gd-2.0.33.tar.gz
cd gd-2.0.33
./configure --with-png --with-freetype --with-jpeg
make install
6.编译PHP
tar zxvf php-4.3.9.tar.gz
cd php-4.3.9
./configure --prefix=/usr/local/php
--with-apxs2=/usr/local/apache2/bin/apxs
--with-mysql=/usr/local/mysql
--with-config-file-path=/usr/local/php/lib
--with-config-file-scan-dir=/usr/local/php/lib
--with-gd
--with-zlib
--with-png
--with-jpeg
--with-freetype
--enable-sockets
PHP和Apache安装后的基本配置
Apache的配置
Apache的配置文件是/usr/local/httpd/conf/httpd.conf,编辑httpd.conf 文件,在文件结尾加上以下两行:
LoadModule php4_module modules/libphp4.so
AddType application/x-httpd-php .php .php3
同时修改DirectoryIndex为
DirectoryIndex index.html index.php index.php3
Apache 的虚拟主机配置:
<VirtualHost xxx.xxx.xxx.xxx> ## 服务器的IP地址
ServerName www.yourname.net ## 您的域名
ServerAdmin web@yourname.net ## 您的管理电子邮箱
DocumentRoot /home/yourname ## 您的存放WEB的目录
</VirtualHost>
Apache的配置内容比较丰富,其它Apache相关配置请参考Apache的相关文档。
PHP的配置
Apache的配置文件是/usr/local/lib/php.ini,编辑php.ini文件来配置PHP的选项。特别注意的是,安装完成后register_globals变量默认设置为Off,需要将它改成On。否则会出现PHP读不到post的数据的现象。
register_globals = On
测试
写一个简单的PHP文件来测试安装,文件包含下列一行:
<? phpinfo();?>
将其保存为/usr/local/httpd/htdocs/info.php,启动Apache,然后在浏览器中浏览。
4、安装 ProFTP:
cd proftpd-1.2.10rc1
./configure –prefix=/usr/proftp
make
make install
cd..
创建系统账户
创建组 # groupadd ftpusers
加入组 # useradd -g ftpusers -d /home/ftp caiqing
(创建系统帐户caiqing到ftpusers组,并设定只可访问/home/ftp 目录)
设置帐户密码 # passwd caiqing
设置访问权限 # chown -R caiqing /home/ftp
(设置帐户caiqing只可对 /home/ftp 目录进行读写)
配置 proftpd.conf 文件
加入:
AllowOverwrite on (可覆盖)
AllowRetrieveRestart on (可断点续上传)
AllowStoreRestart on (可断点续上载)
DefaultRoot ~ (设置帐户只能访问自己的目录)
============Linux与Windows共享硬盘分区=============
Linux下面读写Windows 9X/Windows 2000/XP/DOS的逻辑盘是相当容易的,无需安装任何其他软件,Linux自身就带有mount命令。读写前只要Mount上相应的分区就可以了。
---- 假设在Linux下要使用上述系统中Windows 98的某个文件,则只要以root身份运行以下命令:
---- #mount /dev/hda1 /mnt
----位于Linux根目录下面的/mnt默认应该是空的,当然可以建立其他的空目录如DOS_D之类来方便挂接其他设备
mount后进入/mnt目录,就可以读写DOS的C盘中的任何内容了。不过,这样做没有长文件名。如果想在Linux下mount Windows分区后看到长文件名,需要额外指定一下分区或文件系统类型,即运行以root运行
--#mount -t vfat /dev/hda1 /mnt/命令
(如果你刚刚已经mount了,请先运行umount将其卸载再mount。实际上,mount时应该指定分区类型的,不过现在的Linux也越来越傻瓜化了。),这样就可以看到长文件名了。mount后,我们可以开始安装在Windows下面下载的Linux软件,也可以用Linux下面的GTK see来看看Windows盘中的图形图象……,由于是可读可写的,因此几乎可以“为所欲为”。假设Linux分区中剩余空间少,而Windows中剩余空间还有一大堆,则我们可以将需要下载的大文件下载到Windows的分区中,然后再安装/使用。
假如经常要在Linux下面使用DOS分区的内容,最好让Linux启动后自动将相应的分区mount上,只要修改/etc/fstab即可达到这个效果,下面是Linux的/etc/fstab文件的内容举例,其中最后两行是为了共享Windows的D盘和E盘而增加的。启动后,系统将自动mount Windows 9X的D盘和E盘。
# cat /etc/fstab
/dev/hda3 / ext2 defaults 1 1
/dev/hda2 swap swap defaults 0 0
/dev/fd0 /mnt/floppy ext2 noauto 0 0
none /proc proc defaults 0 0
/dev/hda5 /dos_d vfat defauts 1 1
/dev/hda6 /dos_e vfat defauts 1 1
============启用Telnet服务====================
Linux默认不会启动telnet服务,若想启用此服务,用文本编辑器打开/etc/xinetd.d/telnet配置文件,并修改下列语句;
Service telnet
{
…
Disable =no //将默认的“yes”,改为“no”,则会启用此服务。
…
}
-------------------------------关于Linux启动时的模式-----------------------------------------
smp: 多处理器的模式,可以打开多CPU支持 ,也可以P4 打开超线程技术。
bigmem: 一种内核的模式,是1G 以上内存的优化内核。确切一点bigmem是支持896M以上内存。
up: 单处理器的模式