发信人: wesnet()
整理人: zhcharles(2003-04-05 23:48:11), 站内信件
|
====================================================================
自己动手架设功能强大的 WEB Server v0.02
联系本人:[email protected] QQ:49490304 http://www.oneoo.com
如需转载请告知
以下安装均在 FreeBSD 4.7 Mini 上测试通过,别的linux可能出现错误 :)
-、安装 MySQL ====================================================================
把mysql的安装文件拷到 /usr/local (一定要For FreeBSD 版的哦)
cd /usr/local
解压安装文件
tar -zxvf /usr/local/src/mysql-x.x.x.tar.gz
把解压出来的目录改名
cp -R mysql-x.x.x mysql
rm -R mysql-x.x.x
添加mysql的用户组
groupadd mysql
添加用户
useradd mysql mysql
初始化数据库
cd mysql
scripts/mysql_install_db
更改相应目录和文件的权限
chown -R root /usr/local/mysql
chown -R mysql /usr/local/mysql/data
chgrp -R mysql /usr/local/mysql
chown -R root /usr/local/mysql/bin
cp /usr/local/mysql/support-files/mysql.server /usr/local/mysql
chmod 755 /usr/local/mysql/mysql.server
开启服务器:
/usr/local/mysql.server start
进入MySQL提示符:
/usr/local/mysql/bin/mysql (用 quit 退出)
关闭服务器:
/usr/local/mysql/mysql.server stop
二、安装 Apache+PHP4 ===========================================================
把Apache和php的文件拷到 /usr/src
切换到 /usr/src 目录,并解压apache和php的安装文件
cd /usr/src
tar -zxvf apache_1.3.27.tar.gz
tar -zxvf php-4.3.0.tar.gz
切换到apache_1.3.27目录执行configure程序生成必要的Makefile
cd apache_1.3.27
./configure --enable-module=vhost_alias --enable-shared=vhost_alias --enable-module=so --prefix=/usr/local/apache
切换到php的目录
cd ../php-4.3.0
执行configure程序生成必要的Makefile
附加选项--with-apache=../apache_1.3.27表示把php建立成apache的模组
./configure --with-mysql=/usr/local/mysql --enable-track-vars --with-apache=../apache_1.3.27
开始编译
make
编译安裝程式
make install
回到apache_1.3.27目录下执行configure程序生成必要的Makefile
cd ../apache_1.3.27
./configure --activate-module=src/modules/php4/libphp4.a --enable-module=vhost_alias --enable-shared=vhost_alias --enable-module=so
开始编译
make
编译安裝程式
make install
修改httpd.conf
ee /usr/local/apache/conf/httpd.conf
在DirectoryIndex index.html后面加上index.htm index.php index.ph3
如:DirectoryIndex index.html index.htm index.php index.ph3
添加以下一行
AddType application/x-httpd-php .php .php3
使用apache的动态虚拟主机:
在最后添加以下两行
UseCanonicalName Off
VirtualDocumentRoot /usr/local/apache/htdocs/%1
这样,访问http://xxx.host.com的绝对路径就是 /usr/local/apache/htdocs/xxx ,当然你也可以把/usr/local/apache/htdocs/%1修改成你所需要的路径。
设置完毕
现在把php的配置文件拷到 /usr/local/lib/ 目录下,PHP的安装包里面已经有默认的配置文件,我们只需把它拷出来就行啦
cp /usr/src/php-4.3.0/php.ini-dist /usr/local/lib/php.ini
开启web server
/usr/local/apache/bin/apachectl start
重启web server
/usr/local/apache/bin/apachectl restart
停止web server
/usr/local/apache/bin/apachectl stop
把apache在服务器开的时候一并运行
ee /usr/local/etc/rc.d/apache.sh
apache.sh內容如下
#!/bin/sh
/usr/local/apache/bin/apachectl start > /dev/null && echo -n ' apache'
更改apache.sh的权限
chmod 755 /usr/local/etc/rc.d/apache.sh
三、安装 pure-ftpd ===========================================================
把pure-ftpd的文件拷到 /usr/src
切换到 /usr/src 目录,并解压pure-ftpd的安装文件
tar -zxvf pure-ftpd-1.0.13a.tar.gz
切换到apache_1.3.19目录执行configure程序生成必要的Makefile
cd pure-ftpd-1.0.13a
./configure --with-mysql --prefix=/usr/local/pure-ftpd
开始编译
make
编译安裝程式
make install
在MySQL中新建名为pure-ftpd的数据库,并使用以下的SQL建立数据表
CREATE TABLE users (
User varchar(16) NOT NULL default '',
Password varchar(64) NOT NULL default '',
Uid int(11) NOT NULL default '-1',
Gid int(11) NOT NULL default '-1',
Dir varchar(128) NOT NULL default '',
QuotaFiles int(3) default '500',
QuotaSize int(3) default '30',
ULBandwidth int(3) default '80',
DLBandwidth int(3) default '80',
PRIMARY KEY (User)
) TYPE=MyISAM;
使用该SQL语句添加一个用户(你也可以使用其他方法)
INSERT INTO users VALUES ('testuser', ENCRYPT('testuser'), -1, -1, '/usr/local/apache/htdocs', 500, 30, 80, 80);
用户名 密码 用户的根目录路径 ......详细请看pure-ftpd的帮助文件
在/etc目录下新建pure-ftpd.conf文件,内容如下:
(详细请看pure-ftpd的帮助文件)
ChrootEveryone yes
BrokenClientsCompatibility no
MaxClientsNumber 50
Daemonize yes
MaxClientsPerIP 8
VerboseLog no
DisplayDotFiles yes
AnonymousOnly no
NoAnonymous yes
SyslogFacility ftp
DontResolve yes
MaxIdleTime 15
MYSQLConfigFile /etc/pureftpd-mysql.conf
LimitRecursion 2000 8
MaxLoad 4
AntiWarez yes
Umask 133:022
MinUID 100
AllowUserFXP yes
AllowAnonymousFXP no
ProhibitDotFilesWrite no
ProhibitDotFilesRead no
AutoRename no
AnonymousCantUpload yes
CreateHomeDir yes
CustomerProof yes
在/etc目录下新建/etc/pureftpd-mysql.conf文件,内容如下:
MYSQLServer localhost
MYSQLUser root
MYSQLPassword root (注意哦,这只是本人的数据库用户和密码,要根据自己的设定配置哦:)
MYSQLDatabase pure-ftpd
MYSQLCrypt cleartext
MYSQLGetPW SELECT Password FROM users WHERE User="\L"
MYSQLGetUID SELECT Uid FROM users WHERE User="\L"
MYSQLGetGID SELECT Gid FROM users WHERE User="\L"
MYSQLGetDir SELECT Dir FROM users WHERE User="\L"
MySQLGetQTAFS SELECT QuotaFiles FROM users WHERE User="\L"
MySQLGetQTASZ SELECT QuotaSize FROM users WHERE User="\L"
MySQLGetBandwidthUL SELECT ULBandwidth FROM users WHERE User="\L"
MySQLGetBandwidthDL SELECT DLBandwidth FROM users WHERE User="\L"
修改刚才建立的文件属性:
chmod 666 /etc/pure-ftpd.conf
chmod 666 /etc/pureftpd-mysql.conf.conf
开启服务器:
转到pure-ftpd的目录
cd /usr/local/pure-ftpd
执行开启命令
./pure-ftpd -l mysql:/etc/pureftpd-mysql.conf -B
====================================================================================
基本完成啦 :)
如果要使用动态的虚拟主机,可以自己编写PHP文件,供网友申请哦
具体做法是:
网友在网站上申请虚拟主机,程序根据用户申请的主机名,在/usr/local/apache/htdocs目录下新建用户的目录
并在pure-ftpd的数据库上添加对应的用户名和密码。
请注意哦,要提供虚拟主机,你必须要有一个*.host.com的泛域名指向你的服务器哦 :)
|
|