当前位置:Linux教程 - Linux综合 - 为什么我的Apache服务器支持到一定数量的虚拟主机之后就不能再增加了

为什么我的Apache服务器支持到一定数量的虚拟主机之后就不能再增加了

  问题分析:你可能到达你系统的某个资源的上限了。最有可能的是已经达到了预定义的文件描述符上限,有些库程序(例如gethostbyname())不能得到文件描述符的时候没有把它正确反馈给Apache,所以Apache没有办法自己发现这个问题。每个日志文件都需要一个文件描述符,如果每个虚拟主机分别定义了自己的错误日志和访问日志,那么需要两个文件描述符号,每个监听程序也要占用一个文件描述符号。一般每台机器支持的虚拟主机在128到250之间。  到达文件描述符上限之后,Apache会出现一些问题,比如以SIGSEGV dump core、服务挂起或者服务带故障运行并且在错误日志中记录其他错误。最常见的就是CGI程序不能运行。    解决:  1.减少监听进程;  如果Apache没有提供其他服务,那么只需要让它监听在80端口。  2.减少日志文件的个数;  可以使用mod_log_config使得所有的记录都写入同一个文件,然后需要的时候再用脚本把它分离。  3.增大系统可用的文件描述符上限;  4.减少虚拟主机的个数;

(出处:http://www.sheup.com)