首页 | Linux 基础 | 资讯动态 | Linux 应用 | Linux 服务器 | Linux 开发 | Linux 安全 | 专题 | 联盟论坛
  当前位置:主页>Linux 服务器>文章内容
Linux系统下Apache服务器设置与优化
来源:www.unix5.com 作者:riechelr_hl 发布时间:2007-05-26  

Apache服务器的设置文件位于/usr/local/apache/conf/目录下,传统上使用三个配置文件httpd.conf,access.conf和srm.conf,来配置Apache服务器的行为。 httpd.conf提供了最基本的服务器配置,是对守护程序httpd怎么样运行的技术描述;srm.conf是服务器的资源映射文件,告诉服务器各种文件的MIME类型,以及怎么样支持这些文件;access.conf用于配置服务器的访问权限,控制不同用户和计算机的访问限制;这三个配置文件控制着服务器的各个方面的特性,因此为了正常运行服务器便需要设置好这三个文件。

 

除了这三个设置文件之外,Apache还使用mime.types文件用于标识不同文件对应的MIME类型, magic文件设置不同MIME类型文件的一些特殊标识,使得Apache 服务器从文档后缀不能判断出文件的MIME 类型时,能通过文件内容中的这些特殊标记来判断文档的MIME类型。

 

[iaspec@www conf]$ pwd

/usr/local/apache/conf

[iaspec@www conf]$ ls

access.conf httpd.conf.OLD magic.default srm.conf

access.conf.default httpd.conf.SAVE mime.types srm.conf.default

httpd.conf magic mime.types.default

 

新版本的Apache把原来httpd.conf、srm.conf与access.conf中的所有配置参数均放在了一个配置文件httpd.conf中,只是为了与以前的版本兼容的原因(使用这三个设置文件的方式来源于NCSA-httpd),才使用三个配置文件。而提供的access.conf和srm.conf文件中没有具体的设置。

由于在新版本的Apache中,所有的设置都被放在了httpd.conf中,因此只需要调整这个文件中的设置。本文基于redhat 7.2 下的httpd.conf为例,解释Apache服务器的各个设置选项,当然,其配置方法可扩展到几乎所有unix系统。

 

虽然Apache提供设置的参数很多,基本上这些 参数都很明确,也可以不加改动运行Apache服务器。但如果需要调整Apache服务器的性能,以及增加对某种特性的支持,就需要了解这些设置参数的含义。

 

需要指出的是,除了操作系统的性能调整之外,Apache 服务器本身的缺省配置绝不是最优化和最高效的,而是要适应几乎所有种类操作系统、所有种类硬件下的设置,多平台的软件不可能为特定平台和特定硬件提供最优化的缺省配置。因此要使用Apache的时候,性能调整是必不可少的。

本文目录快速访问:

httpd.conf基本配置与性能优化的关系

另外一些加速方法

附录一、采用 mod_gzip 加速Apache

 

httpd.conf基本配置与性能优化的关系

 

httpd.conf中首先定义了一些httpd守护进程运行时需要的参数,来决定其运行方式和运行环境。 下面就httpd.conf中的配置参数的定义及其各种配置、优化方法进行逐项说明:

(优化没有捷径,必须首先清楚各配置的含义)

 

ServerType standalone

 

ServerType定义服务器的启动方式,缺省值为独立方式standalone,httpd 服务器把由其本身启动,并驻留在主机中监视连接请求。在Linux下把在启动文件 /etc/rc.d/rc.local/init.d/apache中自动启动Web服务器,这种方式是推荐设置。

 

启动Apache服务器的另一种方式是inet方式,使用超级服务器inetd监视连接请求并启动服务器。当需要使用inetd启动方式时,便需要更改为这个设置,并屏蔽/etc/rc.d/rc.local/init.d/apache文件,以及更改/etc/inetd.conf并重起inetd,那么Apache就能从inetd中启动了。

 

两种方式的区别是独立方式是由服务器自身管理自己的启动进程,这样在启动时能立即启动服务器的多个副本,每个副本都驻留在内存中,一有连接请求不需要生成子进程就可以立即进行处理,对于客户浏览器的请求反应更快,性能较高。而 inetd方式要由inetd发现有连接请求后才去启动http服务器,由于inetd 要监听太多的端口,因此反应较慢、效率较低,但节约了没有连接请求时Web服务器占用的资源。因此inetd方式只用于偶尔被访问并且不要求访问速度的服务器上。事实上inetd方式不适合http的突发和多连接的特性,因为一个页面可能包含多个图象,而每个图象都会引起一个连接请求,即使虽然访问人数造成教少,但瞬间的连接请求并不少,这就受到inetd性能的限制,甚至会影响由inetd启动的其他服务器程序。

 

ServerRoot "/usr/local"

 

ServerRoot用于指定守护进程httpd的运行目录,httpd在启动之后把自动把进程的当前目录改变为这个目录,因此如果设置文件中指定的文件或目录是相对路径,那么真实路径就位于这个ServerRoot定义的路径之下。

 

由于httpd会经常进行并发的文件操作,就需要使用加锁的方式来保证文件操作不冲突,由于NFS文件系统在文件加锁方面能力有限,因此这个目录应该是本地磁盘文件系统,而不应该使用NFS文件系统。

 

共13页: 上一页 1 [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] 下一页
 
如果您对本文有任何疑问或者建议,请到论坛讨论区发表您的意见: >> 论坛入口
[收藏] [推荐] [评论(0条)] [返回顶部] [打印本页] [关闭窗口]  
  热点文章
·在Linux x86上安装Oracle数据库1
·Linux操作系统下IPTables配置方
·Linux系统下SVN服务器的搭建过程
·Linux架设代理服务器(1)
·Linux系统下的Oracle数据库编程
·Linux 服务器集群系统
·Linux下免费数据库PostgreSQL开
·高端Linux操作系统服务器技术之
·在Ubuntu Linux 上架设Web服务器
· 在 Linux 上构建 Web spider
·Debian Linux操作系统下启动远程
·用LVS在Linux上搭建负载均衡的集
  相关文章
·详细解析Apache服务器实现的用户
·MySQL数据库引擎快速指导
·Linux 服务器集群系统实现方案详
·mysql 优化参数(十项)详解设置
·在linux下设置WWW Server
·在Linux上建立DNS服务器
·Oracle数据库的备份与恢复
·ORACLE数据库的启动和关闭
·如何在你的Linux机器上安装运行O
·Linux操作系统下IPTables配置方
·Linux 服务器集群系统
·Linux集群的安装与并行计算

本站信息源至:互联网络,均为学习,交流所用,如有版权问题,请联系我们.
站长QQ:397422079 E_mail:riechelr_hl@unix5.com
转载本站内容请注明原作者名.谢谢!