Linux Apache服务器系统的设置与优化(5)
来源:asp之家 发布时间:2010-05-07 18:07:00
上面这些列表就显示了Linux下的缺省Apache服务器支持的模块,事实上很多模块是没有必要的,不必要模块不会被载入内存。模块可以静态连接到 apache 服务器内部,也可以这样动态加载,将Apache的特性都编译成动态可加载模块是该Port的做法,而不是Apache的缺省做法,这样就以牺牲很小的性能的同时,带来极大的灵活性。
因而动态可加载的能力还是对性能有轻微的影响,因此可以重新编译Apache,将自己所需要的功能编译进Apache 服务器内部,可以让系统显得更为干净,效率也有轻微的提高。通常仅仅为了这一个目的就重新编译Apache是没有必要的,如果需要增加其他特性而重新编译 Apache,不妨在增加其他模块的同时将所有的模块都静态连接入Apache 服务器。
这些模块都被放置到/usr/local/apache/modules/目录下, 每个模块对应Apache服务器的一个特性。详细解释每个模块的功能需要相当多的篇幅,其中比较重要的特性将在后面相应的地方中进行解释。
#ExtendedStatus On
Apache服务器可以通过特殊的HTTP请求,来报告自身的运行状态,在使用测试工具测试时,打开这个ExtendedStatus 参数可以让服务器报告更全面的运行状态信息。
主服务器设置
Apache服务器需要各种设置,以定义自己使用各种参数以提供Web服务。对于使用虚拟主机的情况,除了在虚拟主机的定义项中覆盖的设置之外(有的设置必须重新定义),这里的设置也是虚拟主机的缺省设置。
Port 80
Port定义了Standalone模式下httpd守护进程使用的端口,标准端口是80。这个选项只对于以独立方式启动的服务器才有效,对于以inetd方式启动的服务器则在inetd.conf中定义使用哪个端口。
在Unix下使用80端口需要root权限,一些管理员为了安全的原因,认为 httpd 服务器不可能没有安全漏洞,因而更愿意使用普通用户的权限来启动服务器,这样就不能使用80端口及其他小于1024的端口,而必须使用大于 1024的端口来启动httpd,一般情况下8000或8080也是常用的端口。而Apache httpd服务器本身可以在以root权限打开80端口后再改变为普通用户身份进行运行,这样就减少了危险性,因而就不需要考虑这个安全问题。但是如果普通用户也想安装配置自己的WWW服务器,那么就不得不使用大于1024的端口。
User nobody
Group nogroup
User和Group配置是Apache的安全保证,Apache在打开端口之后,就将其本身设置为这两个选项设置的用户和组权限进行运行,这样就降低了服务器的危险性。这个选项也只用于 Standalone模式,inetd模式在inetd.conf中指定运行Apache的用户。由于服务器必须执行改变身份的setuid()操作,因此初始进程应该具备root权限,如果是使用非root用户来启动Aapche,这个配置就不会发挥作用。
缺省设置为nobody和nogroup,这个用户和组在系统中不拥有文件,保证了服务器本身和由它启动的CGI 进程没有权限更改文件系统。在某些情况下,例如为了运行CGI与Unix交互,也需要让服务器来访问服务器上的文件,如果仍然使用nobody和 nogroup,那么系统中将会出现属于nobody的文件,这对于系统安全是不利的,因为其他程序也会以nobody和nogroup的权限执行某些操作,就有可能访问这些nobody拥有的文件,造成安全问题。一般情况下要为Web服务设定一个特定的用户和组,同时在这里更改用户和组设置。
ServerAdmin you@your.address
配置文件中应该改变的也许只有ServerAdmin,这一项用于配置WWW服务器的管理员的email地址,这将在HTTP服务出现错误的条件下返回给浏览器,以便让Web使用者和管理员联系,报告错误。习惯上使用服务器上的webmaster作为WWW服务器的管理员,通过邮件服务器的别名机制,将发送到webmaster 的电子邮件发送给真正的Web管理员。
#ServerName new.host.name
缺省情况下,并不需要指定这个ServerName参数,服务器将自动通过名字解析过程来获得自己的名字,但如果服务器的名字解析有问题(通常为反向解析不 正确),或者没有正式的DNS名字,也可以在这里指定IP地址。当ServerName设置不正确的时候,服务器不能正常启动。
通常一个Web服务器可以具有多个名字,客户浏览器可以使用所有这些名字或IP地址来访问这台服务器,但在没有定义虚拟主机的情况下,服务器总是以自己的正式名字回应浏览器。ServerName就定义了Web服务器自己承认的正式名字,例如一台服务器名字(在DNS中定义了A类型)为 exmaple.org.cn,同时为了方便记忆还定义了一个别名(CNAME记录)为www.exmaple.org.cn,那么Apache自动解析得到的名字就为example.org.cn,这样不管客户浏览器使用哪个名字发送请求,服务器总是告诉客户程序自己为 example.org.cn。虽然这一般并不会造成什么问题,但是考虑到某一天服务器可能迁移到其他计算机上,而只想通过更改DNS中的www别名配置就完成迁移任务,所以不想让客户在其书签中使用 Linux 记录下这个服务器的地址,就必须使用ServerName来重新指定服务器的正式名字。
DocumentRoot "/www/"
DocumentRoot定义这个服务器对外发布的超文本文档存放的路径,客户程序请求的UR L就被映射为这个目录下的网页文件。这个目录下的子目录,以及使用符号连接指出的文件和目录都能被浏览器访问,只是要在URL上使用同样的相对目录名。
注意,符号连接虽然逻辑上位于根文档目录之下,但实际上可以位于计算机上的任意目录中,因此可以使客户程序能访问那些根文档目录之外的目录,这在增加了灵活性的同时但减少了安全性。Apache在目录的访问控制中提供了 FollowSymLinks选项来打开或关闭支持符号连接的特性。
Options FollowSymLinks
AllowOverride None
Apache服务器可以针对目录进行文档的访问控制,然而访问控制可以通过两种方式来实现,一个是在设置文件 httpd.conf(或access.conf)中针对每个目录进行设置,另一个方法是在每个目录下设置访问控制文件,通常访问控制文件名字为. htaccess。虽然使用这两个方式都能用于控制浏览器的访问,然而使用配置文件的方法要求每次改动后重新启动httpd守护进程,比较不灵活,因此主要用于配置服务器系统的整体安全控制策略,而使用每个目录下的.htaccess文件设置具体目录的访问控制更为灵活方便。
Directory语句就是用来定义目录的访问限制的,这里可以看出它的标准语法,为一个目录定义访问限制。上例的这个设置是针对系统的根目录进行的,设置了允许符号连接的选项FollowSymLinks ,以及使用AllowOverride None表示不允许这个目录下的访问控制文件来改变这里进行的配置,这也意味着不用查看这个目录下的相应访问控制文件。


猜你喜欢
- 有没有可能在5R2版OS/400操作系统中设置一个具有SSL功能的FTP服务器?答案是肯定的。iSeries FTP服务器既支持TLS(传输
- 最近在看腾讯新闻的时候,无意中发现,当我选中新闻中的文字的时候,鼠标右上角会显示一个“转播至微博”的按钮,点击后就会将选中的文字转发到微博上
- 在SEO过程中,域名与虚拟主机的选择有时也会起到一定作用,尤其是高手过招,胜负往往就在小细节上。选择域名和虚拟主机,是建站伊始就要实施的工作
- 大家先来看看问题描述:新建虚拟机的列表中没有64位系统选项,如何解决?操作系统:Windows 7 64位;虚拟机:Oracle VM Vi
- 能看到这篇文章的大概都是建网站或爱好做网站的朋友,注册域名、买虚拟主机、选择建站CMS无疑是一个站长经常接触的事情,但是在建站的过程中有很多
- 1 安装邮件列表程序apt-get install mailman2 修改配置 /etc/mailman/mm_cfg.py 此服务器采用e
- 在页面中添加一个随机文章列表的好处是降低站内页面相似度,避免对搜索引擎将页面当做复制页面来处理。我的QQ代码站,这个站就是这种情况。那么要实
- 一、安装POP3和SMTP服务组件Windows Server 2003默认情况下是没有安装POP3和SMTP服务组件的,因此我们要手工添加
- 今天10月27来到公司,一大早的就听到到处都是嚷着我PR3了,我PR5了等......随手查了一下我前几天注册的几个域名,比如我的这个QQ头
- Baidu是中文搜索引擎的老大,Google是世界搜索引擎的龙头。在页面更新上,Google要比Baidu快很多。一般做一个关键词页面,第二
- 在上一篇对活动目录有个基本了解之后下面我就来接触一下活动目录实质上的一面——活动目录的结构。上篇我们讲到活动目录是包括两方面:目录和目录相关
- 有时候为了服务器的安全,我们需要经常登录远程的朋友,可以考虑将administrator改名字,这样一般不知道我们的用户名的人也会增加密码破
- 有必要给热心站长讲解发布文章的基本办法,以提高收录命中率,获得宝贵的初始流量。 提高引擎有效收录,其中最
- 标题中的四个关键词,对于做网站做博客的人来说,再也熟悉不过了。这四个关键词牵动着利益和道德的问题,利益和道德从来都是一对难以调和的矛盾,但要
- 1、点击Godaddy进入网站进行购买。2、点击Hosting打开下拉菜单,点击Web Site Hosting进入主机方案列表。操作过程如
- 什么是别名 在管理和维护Linux系统的过程中,将会使用到大量命令,有一些很长的命令或用法经常被用到,重复而频繁的输入某个很长命令或用法是不
- 本文主要是写给网站月收入1000以下的站长看的,高手们勿笑。我的个人心得也并不一定能帮大家多少忙,欢迎回帖交流,与君共勉。1.增加PV同样是
- 有Godaddy主机用户问如果在共享主机上新增了FTP用户,现在想删除的话,该如何操作呢?要想从你的共享主机上删除新增FTP用户,你可以轻松
- 有的服务器可以用sql溢出,可惜就是找不到进一步的入侵方法,因而一直也没有拿下来。今天在校盟看到一篇文章,说是在cmd下也可以中入sql账号