Linux Apache Web 服务器(续一)

在具体讲解之前,我们必须告诉大家,Apache已经在安装时就采用了一系列的缺省值,已经让WWW服务器跑起来了。你只需要将装上Linux+Apache的主机联入Internet,然后将主页存放到“/home/httpd”目录下即可。

下面介绍一些最主要的配置选项的含义,以便大家用最小的精力、最小的配置准备好服务器。

4.1 httpd.conf

httpd.conf是主配置文件。它告诉服务器将如何运行。

一、最重要的配置选项ServerType standalone | inetd

这个配置选项指定如何运行WEB服务器。Apache可以使用两种方法来运

行服务器:standalone(独立的)和inetd(由inetd运行的)。

standalone参数表示WEB服务进程以一个单独的守候进程的方式在后台侦听是否有客户端的请求,如果有就生成一个子进程来为其服务。

inetd参数表示WEB服务不是以一个单独的守候进程的形式支持。而是由Inetd这个超级服务器守候进程进行代劳,当它收到一个客户端的WEB服务请求的时候,再启动一个WEB服务进程为其服务。

从功能的角度看,这两种方法几乎是相同的。但它们之间实际有很大区别,区别在于服务器的性能。一个由inted运行的服务器进程在它结束对请求服务的同时立刻退出。而在standalone模式下,子WWW服务器进程在退出之前要挂起一段时间,这就给它们提供了机会,可以重新用来服务新的请求。

在standalone模式下,不存在对每个请求启动新进程的开销,所以它的效率更高;而inetd模式被认为比standalone模式更具安全性。

standalone模式:

此种模式下,WWW服务器侦听特定端口的连接请求。当客户机发出到特

定端口地址的连接请求时,主服务器进程启动子WWW服务进程来服务该请求。如下图所示:

图2 独立服务器

另外还需要告诉主服务器进程侦听的特定端口地址,使用命令:

Port [number] (缺省值为80)

inetd模式

inetd是侦听有小于1024的端口连接请求的Internet守护进程(一个服务器进程)。与前面的方法不同,当客户系统发出到WWW服务器的连接请求时,inetd启动一个WWW服务器进程,由此进程服务此请求,完成服务后即退出。如下图所示:

图3 由inetd启动的服务器

如果选择通过inetd服务器来运行Apache,需要编辑/etc/inetd.conf文件为Apache添加一条新的记录:

httpd stream tcp nowait httpd /etc/httpd/bin/httpd –f /etc/httpd/conf/httpd.conf

修改了/etc/inetd.conf文件后,就需要修改/etc/services中添加一行

httpd 80/tcp httpd

做完以上修改后,需要重新启动inetd进程。首先,使用以下命令取得inetd的进程ID:

ps auxw |grep inetd

然后执行命令:kill –HUP

在RedHat Linux中,默认是采用inetd服务器来运行Apache,所以只要你在安装时选择了httpd,以上工作在安装时就已经代你完成了。

二、其它配置选项

Server Admin命令,用来设置WEB管理员的E-Mail地址。这个地址会出现在系统连接出错的时候,以便访问者能够将情况及时地告知WEB管理员。

命令格式: Server Admin [you E-Mail address]

例:Server Admin admin@xxx.com

ErrorLog命令,用来指定错误记录文件名称和路径。

命令格式: ErrorLog [log filename]

例:ErrorLog /var/httpd/error.log

Timeout命令,只要客户端超过这里设定的秒数还没有完成一个请求的话,服务端将终止这次请求服务。如果网络速度较慢的话,建议在此设置较大的数值。以给客户端更多机会。

命令格式: Timeout [second]

例:Timeout 120

ServerRoot命令,它指定在何处保存服务器的配置、错误及日志文件。

命令格式: ServerRoot [fully qualified path name]

例:ServerRoot /etc/httpd

ServerName命令,它配置服务器的Internet主机名

命令格式: ServerName [host name]

例:ServerName www.xxx.com

4.2 srm.conf

srm.conf是资源配置文件,用它来告诉服务器你想在WWW站点上提供什么资源以及在哪里和如何提供它们。

DocumentRoot命令,用来指定主文档的地址。

命令格式: DocumentRoot [Path]

例:DocumentRoot /home/httpd/html

UserDir命令,用来指定个人主页的位置。如果你有一个用户test,那么它主目录是“/home/test”,当客户端输入“http://yourdomain/~test”,系统就会到对应的目录“/home/test/UserDir/”中去寻找。其中“UserDir”就是在UserDir命令中设置的指定目录。

命令格式: UserDir [Path]

例: UserDir Public_html

DirectoryIndex命令,用来声明首页文件名称。一般地,我们使用“index.html”或“index.htm”作为首页的文件名。如果这样设置后,那么客户端发出WEB服务请求时,将首先调入的主页是在指定目录下文件“index.html”或“index.htm”。

命令格式: DirecotryIndex [filename]

例:DirecotryIndex index.html index.htm

ScriptAlias命令,为脚本程序目录起个别名,具体可见4.7小节。

命令格式: ScriptAlias [/alias/] [fullly qualified path for script directory]

例: ScriptAlias /cgi-bin/ /home/httpd/cgi-bin

4.3 access.conf的配置

access.conf文件用来设置WWW站点上诸如文件、目录和脚本项目的访问权限。该文件的第一段非注释部分如下:

Option Indexes Includes ExecCGI FollowSymLink

AllowOverride None

Order allow , deny

allow from all

大家应该注意到,这一个部分是以开始,以结束的。这表示在其中间的部分都是针对指定目录“/home/httpd/html”而言的。

1.Option命令有很多的参数,各个参数的意义如下所示:

All 准许以下所有功能(MultiViews除外);

MultiViews 准许内容协商的Multiviews;

Indexes 若该目录下无index文件,则准许显示

该目录下的文件以供选择;

IncludesNOEXEC 准许SSI(Server-side Includes),但不可

使用#exec和#include功能;

Includes 准许SSI;

FollowSymLinks 准许符号链接到其他目录;

ExecCGI 准许该目录下可以使用CGI。

2.而AllowOverride命令则是用来决定是否准许在“access.conf”文件中设定的权限是否可以被在文件“.htaccess”中设定的权限覆盖。它有两个参数:

All 准许覆盖;

None 不准许覆盖。

3.Order命令:用来设定谁能从这个服务器取得控制。它也有两个参数:

allow 可以取得控制;

deny 禁止取得控制。

现在我们一起来看看关于目录“/home/httpd/html”的设置的含义:它使得这个目录,如果不存在index.htm文件时,列出目录信息以供选择,准许SSI,允许执行CGI程序,开启了动态连接。它不允许再使用在文件“.htaccess”中设定来覆盖这里所设置的权限。使所有的人都可以取得控制。

该文件的第二段非注释部分如下:

Option ExecCGI

AllowOverride None

这个表示目录“/home/httpd/cgi”的设置为,当前目录下可以执行CGI程序。不允许再使用在文件“.htaccess”中设定来覆盖这里所设置的权限。

需要说明的是,不同的LINUX系统中,可以在这个文件中看到的信息不完全相同,但是根据这里给出的信息,大家可以参照命令的解释自行理解文件中的设置,以及根据自己的需要进行相应的修改。

4.4 使新的配置生效

在上面,我们可能已经根据新的需求更改了相应的配置选项,如果我们要

使得这个新的配置立即生效。我们就必须重新启动WEB服务进程。在LINUX中,我们可以十分方便地使用命令行来使得WEB服务进程重启。

/etc/rc.d/init.d/httpd restart

(0)

相关推荐

  • Linux Apache Web 服务器(续一)

    在具体讲解之前,我们必须告诉大家,Apache已经在安装时就采用了一系列的缺省值,已经让WWW服务器跑起来了.你只需要将装上Linux+Apache的主机联入Internet,然后将主页存放到"/home/httpd"目录下即可. 下面介绍一些最主要的配置选项的含义,以便大家用最小的精力.最小的配置准备好服务器. 4.1 httpd.conf httpd.conf是主配置文件.它告诉服务器将如何运行. 一.最重要的配置选项ServerType standalone | inetd 这个

  • Linux Apache Web 服务器(续三)

    . 在这种情况下,在WWW上保证可以使用的唯一认证机制是由HTTP本身提供 的.在标准的Apache服务器实现了这样的认证,它能控制哪些主机可能访问特定的站点或特点的站点的一部分. 这种认证可以分为两种,一种是基于主机的的认证,另一种是基于用户名/口令的认证.由于互联网上的决大多数用户的IP地址是动态获得的,所以基于主机的认证方式并不总适用.所以在大多数情况下,传统的基于用户名/口令的认证方式更为现实.下面我们就对这两种认证的实现做一简要的介绍. 8.1 基于主机的认证方式 在种认证模式顾名思义

  • Linux Apache Web服务器安全的8种安全设置技巧

    Apache服务器是一款开源的WEB服务器,是由非营利组织Apache软件基金会的支持的,我们很多的虚拟主机.VPS等都会使用Apache服务器架构环境,但是任何的架构环境都会遭受各种可能的攻击.安全漏洞的检测.SQL注入.各种拒绝服务攻击等. 作为我们VPS/服务器用户来说,我们一来需要多做备份确保服务器上网站数据的安全,二来还需要随时的观察我们服务器的监控动向,三来需要关注各种最新漏洞安全的更新脚本,作为基础的应用手段,我们需要确保基础的Apache安全设置,从基础上保证服务器的安全. 第一

  • Linux Apache Web 服务器终极教程

    APACHE系统介绍 根据著名的WWW服务器调查公司所作的调查,世界上百分之五十以上的WWW服务器都在使用Apache,是世界排名第一的WEB服务器.Apache的诞生极富有戏剧性.当NCSA WWW服务器项目停顿后,那些使用NCSA WWW服务器的人们开始交换他们用于该服务器的补丁程序,他们也很快认识到成立管理这些补丁程序的论坛是必要的.就这样,诞生了Apache Group,后来这个团体在NCSA的基础上创建了Apache. Apache的主要特征是: . 可以运行上所有计算机平台: . 支

  • Linux Apache Web 服务器

    商业界很快看到了其价值,许多公司建立了主页,利用Web在网上发布消息,并反它作为各种服务的界面,如客户服务.特定产品和服务的详细说明.宣传广千以及是渐增长的产品销售和服务.商业用途促进了环球信息网络的迅速发展. 如果你想通过主页向世界介绍自己或自己的公司,就必须将主页放在一个WEB服务器上,当然你可以使用一些免费的主页空间来发布.但是如果你有条件,你可以注册一个域名,申请一个IP地址,然后让你的ISP将这个IP地址解析到你的LINUX主机上.然后,在LINUX主机上架设一个WEB服务器.你就可以

  • Apache Web 服务器的安装配置方法

    学习如何在 Apache 上托管你自己的网站,这是一个可靠.流行且易于配置的 Web 服务器. 我托管自己的网站已经有很多年了.自从 20 多年前从 OS/2 切换到 Linux 以来,我一直将 Apache 作为我的服务器软件.Apache 是可靠.流行的,且基本的安装配置也很容易.对于更复杂的设置(比如多个网站)也并不是那么困难. Apache Web 服务器的安装和配置必须以 root 身份执行. 防火墙的配置也需要以 root 身份执行. 使用浏览器查看安装配置的结果应该以非 root

  • linux轻量级 Web 服务器第1/2页

    作为 Apache 和其他市场领头产品的补充的专用 HTTP 应用程序   级别: 中级Cameron Laird (claird@phaseit.net), 副总裁, Phaseit, Inc.2007 年 7 月 23 日 最 近几年,市场上出现了很多有趣的 Web 服务器实现,包括 lighthttpd.litespeed 和 mongrel 等.这些 Web 服务器都宣称结合了性能.易管理性.可移植性.安全性和其他相关价值.下面的工程研究将调查轻量级 Web 服务器,以帮助您选择最可能满

  • Apache Web服务器安全配置全攻略

    作为最流行的Web服务器,Apache Server提供了较好的安全特性,使其能够应对可能的安全威胁和信息泄漏. Apache 服务器的安全特性 1. 采用选择性访问控制和强制性访问控制的安全策略 从Apache 或Web的角度来讲,选择性访问控制DAC(Discretionary Access Control)仍是基于用户名和密码的,强制性访问控制MAC(Mandatory Access Control)则是依据发出请求的客户端的IP地址或所在的域号来进行界定的.对于DAC方式,如输入错误,那

  • Apache Web服务器的完全安装指南

    所需软件 apache_1.3.20.tar.gz 主页: http://www.apache.org mod_perl-1.26.tar.gz 主页: http://perl.apache.org openssl-0.9.6b.tar.gz 主页: http://www.openssl.org mod_ssl-2.8.4-1.3.20.tar.gz 主页: http://www.modssl.org php-4.0.6.tar.gz主页: http://php.apache.org webal

  • CentOS 6.5 web服务器apache的安装与基本设置

    CentOS 6.5系统镜像有两个,安装系统只用到第一个镜像即CentOS-6.5-i386-bin-DVD1.iso(32位)或者CentOS-6.5-x86_64-bin-DVD1.iso(64位),第二个镜像是系统自带软件安装包:对于新手不建议安装最小版本,很多基本的工具都需要安装. 具体的也可以参考这篇文章: http://www.jb51.net/os/78318.html CentOS 6.8 服务器系统安装配置图解教程 使用yum安装apache yum install httpd

随机推荐