从硬盘安装Linux操作系统 | 基本操作 | Linux技术文章及解答Linux疑问

应用程序简介 | Shell命令行操作 | 编程基础 | 下载Linux教程

连接因特网 | 软件的安装和卸载 | 搭建个人网站 | 红联Linux论坛

 

   红联Linux门户>>红联Linux论坛>>第十六章 搭建个人网站>>下载本章教程

学习内容

用Apache提供简单Web服务

安装Apache 2.0.53

配置

启动和关闭

自动启动

支持PHP 的Web 网站

安装Apache 2.0.53

安装PHP 5.0.2

配置Apache

测试

FTP 服务

安装ProFTP 1.2.9

基本配置

用户权限控制

启动

相关命令

技术文章更新网

红旗LinuX新手学习网

Linux新手技术文章

Linux系统管理及应用

Linux教程下载

服务器应用及网络安全

数据库应用

编程技术文章

Linux开发技术文章

Linux业界新闻

Linux认证

前往红联Linux论坛学习

搭建个人网站

《中文版Linux 桌面操作系统初级教程》郭守华 宋雪娇 编著

        在一个被Windows垄断的办公环境中使用Linux办公,你就是少数,你就不得不照顾大多数人的

习惯,想办法“兼容”大多数人。

        一个比较有效的办法就是把自己的计算机改造成简单的个人网络服务器,利用流行的网络服务解

决与大多数人交流电子文档的问题。下面将讨论如何基于红旗Linux桌面版配置服务器,提供WWW/FTP服务

的问题。注意,这里的讨论只适合个人使用。如果要搭建企业级的服务器,需要考虑更多的问题,这里介

绍的方法也许并不够充分。

用Apache 提供简单Web 服务

        假设要建立一个个人Web网站,允许别人能通过内部局域网访问这个网站,阅读文档或下载软

件。网站的网页文件都存在/mnt/WinD/www123 下,首页文件名是index.html,可供下载的软件存在

/mnt/WinD/unixsoft下。

安装Apache 2.0.53

        Apache服务器软件安装包是一个tar包,可以下载得到。其中包含所有的源程序。2.0.53版的文

件名是httpd-2.0.53.tar.gz,也有httpd-2.0.53.tar.bz2的,只是压缩方式不同而已。在图形界面

下,选中压缩包点鼠标右键,在弹出菜单中选择“解压”即可完成解压1,形成httpd-2.0.53目录。在命

令行方式下,转入httpd-2.0.53目录,configure,make,make install,make clean 等命令就可以

完成安装完了。为了方便,可以把这些命令用分号(;)隔开写成一行,如下所示。

       ./configure;make;make install;make clean

       这样做之后,安装程序会自动在/usr/local中创建apache2 目录,Apache服务器软件的所有配

置文件和可执行文件就都保存在这里。如果要卸载,只需将apache2 目录删除即可2。有两点需要注意:

第一,安装时必须使用root身份;第二,如果httpd-2.0.53目录处于系统自动挂装的非ext2/ext3分区,

执行configure 命令可能会出错,导致无法正常安装。如果httpd-2.0.53 目录在ext2/ext3分区,就不

会出现这个问题了。因此,建议把解压形成的httpd-2.0.53目录放在/root目录之下。

配置

       接下来要修改配置文件/usr/local/apache2/conf/httpd.conf 来控制服务器软件,使其按要求

运行。首先,修改Listen行,确定服务的IP 地址和端口号:

       Listen 10.1.30.147:80

说明:10.1.30.144 是当前计算机的IP地址,通过80端口提供Web服务。此项不特意设也可,默认端口就

是80。

 

 

其次,修改DocumentRoot ,设定主页所在的根目录。修改后形成如下两行:

       DocumentRoot "/mnt/WinD/www123"

       <Directory "/mnt/WinD/www123">

第三,修改DirectoryIndex行,确认首页的文件名在其中。如果没有就追加上。

       DirectoryIndex index.html index.html.var

---------------------

1当然,也可以使用命令行命令进行解压。

2不能用make uninstall卸载,因为Apache 安装的make 没有定义uninstall这个参数。

第四,增加一个Alias,把/mnt/WinD/unixsoft映射为网站根目录下的unixdown目录。增加的内容如下:

Alias /unixdown/ "/mnt/WinD/unixsoft"

<Directory "/mnt/WinD/unixsoft">

Options Indexes MultiViews

AllowOverride None

Order allow,deny

Allow from all

</Directory>

         上述四步配置的目的是使局域网的其他计算机能用http://10.1.30.144/这个网址访问我的网站了。要下载存放在

/mnt/WinD/unixsoft的软件,则输入http://10.1.30.144/download/就可以看到文件列表。

启动和关闭

安装配置好之后,运行下面的命令是就可以启动这个WWW服务器了。

        /usr/local/apache2/bin/apachectl start

若要重启动这个WWW服务器

       /usr/local/apache2/bin/apachectl restart

若要关闭WWW 服务

      /usr/local/apache2/bin/apachectl stop

自动启动

如果希望系统每次启动时自动启动httpd 服务器,则还要做如下工作。

首先,拷贝apachectl 到/etc/rc.d/init.d/,并更名为httpd ,相应的命令是:

        cp /usr/local/apache2/bin/apachectl /etc/rc.d/init.d/httpd

然后,修改/etc/rc.d/init.d/httpd中的ARGV 行,改成:

        ARGV="start"

最后,在/etc/rc.d/rc5.d目录下,创建一个指向httpd 的硬链接。相应的命令是:

        ln /etc/rc.d/init.d/httpd /etc/rc.d/rc5.d/S85httpd

为了保证在字符模式下启动红旗也能提供Web服务,还要在/etc/rc.d/rc3.d目录下,创建一个指向httpd的硬链接。相应的命令是:

        ln /etc/rc.d/init.d/httpd /etc/rc.d/rc3.d/S85httpd

支持PHP 的Web 网站

        上面已经建立了简单的Web网站。很多情况下,这已经能满足了文档和软件共享的需要。但有些时候,还需要记录网站被访问

的次数、软件的下载次数,甚至需要建立一个简单的留言簿。这时,就需要使Web网站支持某种动态网页。在Linux上,一种最流行的

支持动态网页的搭配就是:Apache+PHP。下面就讨论如何用Apache 和PHP 搭建支持PHP 的Web网站。

安装Apache 2.0.53

        关于Apache的安装前面已经做了介绍。但为了与PHP 配合工作,Apache的安装操作会有所变化。对比前面“简单Web服务”

的安装操作,在执行configure指令时稍有不同,需要给configure 增加参数--enable-so使其支持可装载模块和标准的MPM

prefork。具体来说在命令行方式下,转入httpd-2.0.53目录后,执行如下命令进行安装。

         ./configure --enable-so

         make;make install;make clean

安装PHP 5.0.2

        PHP软件安装包也是一个tar包,可以下载得到。文件名为php-5.0.2.tar.gz3,解压方法与Apache的相同。需要注意的是,

为了能正常编译,最好直接在ext2/3分区上进行解压。解压后会形成php-5.0.2目录。转入该目录开始安装。安装PHP 前应关闭

Apache。安装时configure 指令需要参数,这个参数说明了Apache具体的安装路径。

       ./configure --with-apxs2=/usr/local/apache2/bin/apxs

       make4

       make install;make clean

安装完成后,还需要把php 的配置文件复制到合适的目录下,具体命令如下:

       cp php.ini-dist /usr/local/lib/php.ini

配置Apache

       关于Apache的配置前面已经做过一些介绍。显然,在搭建支持PHP的Web网站时这些配置仍需要做。为了使其与PHP 配合工

作,还要增加如下的配置。首先,检查配置文件/usr/local/apache2/conf/httpd.conf中是否有如下的条目(一般来说,在安装php

的过程中,都会自动增加),如果没有,一定要添加以便Apache在启动时可以自动加载php 模块。

      LoadModule php5_module modules/libphp5.so

其次,还要手工增加如下两个条目:

      AddType application/x-httpd-php .php .phtml

      AddType application/x-httpd-php-source .phps

第一条的含义是:如果文件扩展名为.php 或.phtml,就要用PHP 解析;第二条的含义是:如果文件扩展名为.phps就按PHP 语法高亮

显示该源文件5。最后,还应该修改DirectoryIndex行,允许首页以index.php 作为文件名。修改后的情况就是:

      DirectoryIndex index.html index.php index.html.var

--------------

3经验表明,php-4.3.10.tar.gz在红旗Linux4.1桌面版上无法编译,因此这里用php-5.0.2.tar.gz。

4不要在fat分区执行此命令,否则会出现错误。

5经测试,Linux 下的Firefox无法实现这种高亮显示,但Windows下的IE 可以。

测试

        做了上述配置后,这个Web网站就支持PHP了。可以编写一个简单的PHP文件phptest.php进行测试,其中含有PHP 语句即可。

下面是一个例子:

<html>

<head>

<title>Example</title>

</head>

<body>

<?php

echo "Hi, I'm a PHP script!";

?>

</body>

</html>

如果在浏览器上只显示了红色字体的文字,就说明该网站能正确解析PHP 文件。

FTP服务

安装ProFTP 1.2.9

       可以安装ProFTP 来提供ftp 服务。可以下载得到ProFTP的安装包proftpd-1.2.9.tar.gz,先用tar命令解压。也可以在图

形界面下,选中压缩包点鼠标右键,在弹出菜单中选择“解压”进行解压,形成后形成proftpd-1.2.9目录。在命令行方式下,转入

proftpd-1.2.9目录, 依次执行configure,make,make install,make clean等命令就可以完成安装完了。为了方便,可以把这

些命令用分号(;)隔开写成一行,如下所示。

       ./configure;make;make install;make clean

ProFTP 的安装程序会把配置文件proftpd.conf放在/usr/local/etc下,把可执行文件proftpd及ftpshut 放在/usr/local/sbin

下。

基本配置

         在运行proftpd之前,需要对运行环境和proftpd的配置文件进行设置,以便该软件按要求运行。

首先,核实系统是否存在系统用户ftp 的默认家目录,即/var/ftp这个目录。/var/ftp这个目录是系统用户ftp的默认家目录,也是

匿名ftp用户(anonymous)登陆后自动进入的目录。如果没有/var/ftp,匿名ftp 服务可能会有问题。如果系统中没有/var/ftp 这个

目录,就应该创建它,并将其属主设成ftp。相应的命令如下:

        mkdir /var/ftp

        chown ftp.ftp /var/ftp

还有一种办法,就是修改系统用户ftp的属性,使其家目录指向其他已存在的目录。方法是:执行【开始】→【设置】→【控制面板】

→【本地用户和组】,找到ftp这个用户,选中它并点鼠标右键,执行弹出菜单的“属性”即可调出该用户的属性设置界面,在“主目

录”中输入相应的目录,然后确定即可。其次,修改proftpd的配置文件/usr/local/etc/proftpd.conf。在配置文件中有User 和

Group 项,是用来设定运行proftpd 的身份的。其中,Group 项初始值设为nogroup,而实际上红旗Linux4.1中并没有自动创建

nogroup这个组,只有nobody这个组(其中有nobody用户)。因此,Group 项应改为

Group nobody

如果想给匿名用户开放写入权限,还应该修改配置文件中<Anonymous ~ftp>和</Anonymous>之间的Limit段改写成:

<Limit WRITE>

#DenyAll

AllowAll

</Limit>

用户权限控制

        经上述配置后,当以匿名身份登陆时,只能访问系统用户ftp的家目录。读写权限由配置文件控制。如果创建了普通用户帐

户,也可以用这个帐户来登陆ftp服务,密码就用该用户登陆系统时所用的密码。此用户登陆后的读写权限与直接登陆系统时的权限相

同。这意味着,该用户以ftp方式登陆后,对系统中绝大多数文件和目录都有读的权限,都可以下载!在大多数情况下,这是比较危险

的。如果希望普通用户以ftp方式登陆后被限制在其家目录内,就需要让配置文件/usr/local/etc/proftpd.conf中的DefaultRoot ~

生效。方法很简单,把DefaultRoot ~之前的井号(#)删除即可。

启动

执行proftpd命令,就可以启动proftpd,以stand-alone模式提供FTP 服务。带完整路径的命令6如下:

       /usr/local/sbin/proftpd

如果希望proftpd 能被自动启动,则应打开/etc/rc.d/rc.local,加入如下一行内容。

       /usr/local/sbin/proftpd

这样,每次启动计算机后,proftpd都会被自动启动。

相关命令

关闭FTP服务

       ftpshut now

此命令会在/etc 下生成文件shutmsg。此命令仅仅是停止FTP 服务,并不是关闭proftpd程序。重新开放FTP 服务

-----------

6直接在命令行输入proftpd 也是可以的,因为/usr/local/sbin已经被记录在系统的PATH 变量中了。

      ftpshut -R now

直接把/etc/shutmsg删除也能产生相同的效果。

查看服务器在线人数

      ftpcount

显示在线人员名单

      ftpwho

全章学习完毕,可以结业了

下一章的学习内容:没有了

推荐主题:

Linux实用培训学习教程1.0(最终版)下载:http://www.linuxdiyf.com/zs/sj.htm
Linux教程及Linux资料下载:http://www.linuxdiyf.com/bbs/forum-6-1.html
Linux技术文章及解答Linux疑问专区:http://www.linuxdiyf.com/bbs/forum-3-1.html
安装Linux及学习Linux指导:http://www.linuxdiyf.com/bbs/forum-3-1.html
获取Linux荣誉证书:http://www.linuxdiyf.com/zs/


        

   Linuxdiyf.com
红联Linux论坛 关于我们 联系我们 本网解释权归红联论坛,如有不妥请来信告之,我们将做一处理