当前位置:Linux教程 - Linux - 动手干吧--跟我学构建一个Linux网络平台(三)

动手干吧--跟我学构建一个Linux网络平台(三)

陈智华


内部Web服务
内部Web服务可以作为企业Intranet的平台,在Linux中有很多的基于Web的应用。作为Web应用的基础,我们选择Apache平台,它是目前在互联网上应用最广的Web服务器软件,其性能和可扩展性已经得到了长时间的检验,而且有很多的Web应用均直接支持Apache。按照前述的安装过程所安装的Redhat 6.2已经包含了Apache服务器,但作为专用Web服务器,我们还希望扩展它的功能,在这里我们将介绍目前比较流行的Apache构建方式:Apahce+PHP4+Mysql。Mysql作为支持Web数据存储的小型数据库具有较高的处理速度,非常适合Web应用,同时可以通过phpMyAdmin实现Web方式的简单管理,因此比较流行。对基于名字的虚拟主机也将做一个简单的介绍。
为获得较好的性能,我们将PHP编译到Apache当中,而不是将其编译成一个模块。以下是所需要的软件包:(下载地址)
mysql-3.22.32-pc-linux-gnu-i686.tar.gz
apache_1.3.12.tar.gz
php-4.0.1pl2.tar.gz
phpMyAdmin_2.0.5.tar.gz

1.首先将这些软件包copy到一个临时目录中如/usr/local/src。并在该目录中将它们解压缩:
# tar xzf mysql-3.22.32-pc-linux-gnu-i686.tar.gz
# tar xzf apache_1.3.12.tar.gz
# tar xzf php-4.0.1pl2.tar.gz
# tar xzf phpMyAdmin_2.0.5.tar.gz

2.安装mysql数据库,我们选择的mysql压缩包是二进制版本,所以简单地将/usr/local/src/mysql-3.22.32拷贝到/usr/local/下,并更改目录名为mysql:
# cp /usr/local/src/mysql-3.22.32 /usr/local/src/mysql
初始化mysql数据库:
# cd /usr/local/src/mysql
# ./scripts/mysql_install_db
将mysql的数据库启动脚本加入系统启动目录:
# cp /usr/local/mysql/support-files/mysql.server /etc/rc.d/init.d/mysqld
# chmod 700 /etc/rc.d/init.d/mysqld
# ln -s /etc/rc.d/init.d/mysqld /etc/rc.d/rc3.d/S97mysqld
现在可以重启服务器或运行/etc/rc.d/init.d/mysqld start来启动mysql进程。测试数据库是否安装成功可以运行如下命令:
# /usr/local/mysql/bin/mysql mysql
mysql 3.22.32
>select * from userg
如果可以成功地查询出结果,表示mysql的安装成功了。使用q退出。

3.安装php和apache,我们把apache安装到/usr/local/apache中,下面是安装过程:
# cd /usr/local/src/apache_1.3.12
# ./configure --prefix=/usr/local/apache
# cd ../php-4.0.1
# ./configure --with-mysql=/usr/local/mysql --with-apache=../apache_1.3.12 --enable-track-vars
# make
# make install
# cd ../apache_1.3.12
# ./configure --prefix=/usr/local/apache --activate-module=src/modules/php3/libphp3.a
# make
# make install
# cd ../php-4.0.1
# cp php.ini-dist /usr/local/lib/php.ini
可以编辑/usr/local/lib/php.ini来设置php的一些参数。
修改apache的配置文件以使apache将php结尾的文件交给php4引擎来处理。同时定义index.php可以作为目录的缺省处理文件。修改/usr/local/apache/conf/httpd.conf中的如下几行:
AddType application/x-httpd-php .php
Index index.html index.php
覆盖Redhat的httpd启动脚本,让新安装的apache可以随系统一起启动。
# /etc/rc.d/init.d stop
# cp /usr/local/apache/bin/apache-ech /etc/rc.d/init.d/httpd
# /etc/rc.d/init.d start

4.虚拟主机配置,在前面我们将mycompany.vvv和www.mycompany.vvv均指向了192.168.6.4,希望它们呈现给用户的是不同的网站,这就要用到Apache基于域名的虚拟主机功能。比如我们希望使用mycompany.vvv来进行基于Web的mysql管理,而www.mycompany.vvv用于为内部用户发布信息和提供服务。可以进行如下操作:
# adduser admin
# adduser www
# mkdir /home/admin/html
# mkdir /home/admin/cgi-bin
# mkdir /home/www/html
# mkdir /home/www/cgi-bin
# chown -R admin.admin /home/admin
# chown -R www.www /home/www
# chmod 711 /home/admin
# chmod 711 /home/www
编辑/usr/local/apache/conf/httpd.conf,在该文件的最后,加入如下内容:
NameVirtualHost 192.168.0.4

ServerAdmin [email protected]
DocumentRoot /home/admin/html
Cgi-bin
ServerName mycompany.vvv
ErrorLog logs/mycompany.vvv-error_log
CustomLog logs/mycompany.vvv-access_log common


ServerAdmin [email protected]
DocumentRoot /home/www/html
Cgi-bin
ServerName www.mycompany.vvv
ErrorLog logs/www.mycompany.vvv-error_log
CustomLog logs/www.mycompany.vvv-access_log common

重启apache:
# /etc/rc.d/init.d/httpd restart
制作测试页:
# su www
$ cd /home/www/html
$ pico index.php
文件index.php的内容如下:
phpinfo();
?>
在内部网用户的电脑上使用浏览器访问http://www.mycompany.vvv,如果你可以看到如图4的画面,表示Apache、PHP4及虚拟主机的配置均安装成功了。
5.安装phpMyAdmin,将/usr/local/src/phpMyAdmin拷贝到/home/admin/html/phpMyAdmin下,并编辑/home/admin/html/phpMyAdmin,步骤如下:
# su admin
$ cp -r /usr/local/src/phpMyAdmin /home/admin/html/phpMyAdmin
$ cd /home/admin/html/phpMyAdmin
$ pico ./config.inc.php
PhpMyAdmin有中文的词汇文件,可以将操作界面改变为中文,编辑config.inc.php改成如下形式:
......
require(""chinese_gb.inc.php"");
......
在内部网用户主机上用浏览器访问http://mycompany.com/phpMyAdmin/,看到类似如图5界面表示安装成功了。