QQ登录

只需一步,快速开始

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 823|回复: 7

你们有没碰到apache出现这样的问题?

[复制链接]
发表于 2004-2-20 20:02:08 | 显示全部楼层 |阅读模式
今天我碰到了一个N奇怪的问题,发现网页不能访问了,查看进程,发现httpd进程只剩几个,本来应该要有好多的!
用apachectl stop 命令停掉http服务,提示httpd.pid进程 xxxx 不存在,无法停止。查看进程,确实xxxx不存在。
用killall httpd杀掉所有的httpd进程,再用apachectl start启动apache,发现apache的主进程不在,即httpd.pid文件里的那个进程不在。
以为被攻击了,查看几个重要文件,都没有被动过的痕迹....难道碰到黑客高手了?
后来试着用最初的apache配置文件httpd.conf 覆盖原先的httpd.conf,然后用apachectl start 启动apache,发现可以启动。初步怀疑是配置文件的问题,然后打开配置文件一句句看下来了,发现配置文件没问题。但是就是启动不了(其实不是启动不了,是启动后httpd的父进程没了,只剩子进程),于是就拿最初的配置文件httpd.conf与现在的httpd.conf比对着一步步改下来,发现到指定错误文件那句ErrorLog /var/log/error_log时就出现问题,于是就转到/var/log目录下查看error_log文件,发现此文件大小为2左右。试着删除error_log文件,用apachectl start启动apache一切正常!
晕!apache的日志文件难道有限制不能超过2G的么?或许是本来就有,而我不知道而已!我的apache版本是1.3.29
发表于 2004-2-20 23:34:55 | 显示全部楼层

Re: 你们有没碰到apache出现这样的问题?

[quote:6ddca50bc1="kenrong"]
晕!apache的日志文件难道有限制不能超过2G的么?
[/quote]

估计是系统的限制,不是APACHE,能直接创建一个大过2G的FILE吗?
回复

使用道具 举报

 楼主| 发表于 2004-2-21 00:41:33 | 显示全部楼层
才想着,以前似乎听过好像Mysql的一张表最大也只到2G,不知道有没这回事?估计看来这也是系统的限制了?
我的系统是RH Linux 7.3的,文件系统是ext3
回复

使用道具 举报

 楼主| 发表于 2004-2-21 00:47:46 | 显示全部楼层
我查看过,应该不是系统的限制,用ulimit -a 查看信息如下:
core file size (blocks, -c) 0
data seg size (kbytes, -d) unlimited
file size (blocks, -f) unlimited
max locked memory (kbytes, -l) unlimited
max memory size (kbytes, -m) unlimited
open files (-n) 1024
pipe size (512 bytes, -p) 8
stack size (kbytes, -s) 8192
cpu time (seconds, -t) unlimited
max user processes (-u) 2040
virtual memory (kbytes, -v) unlimited

看信息应该是没限制文件大小的
回复

使用道具 举报

发表于 2004-2-21 00:49:34 | 显示全部楼层
好像2.4以上的内核没有2g的限制
回复

使用道具 举报

发表于 2004-2-21 03:23:44 | 显示全部楼层
[quote:d93311c065="kenrong"]我查看过,应该不是系统的限制[/quote]

你确认不是系统的限制的话,不知道是不是属于这种情况

This can be tricky.  Even though I had the newest linux kernel and using ReisferFS, I still bumped into the 2GB limit.  It happened with an Apache log, I thought I can let it grow beyond 2GB, but it would stay at 2GB and discard all new logs beyond that point.  The trick was to enable large file support when compiling Apache.  
So watch out, and test everything before you put it in production.

http://www.experts-exchange.com/Operating_Systems/Unix/Unix_Setup/Q_20601718.html

印象中没听说过APACHE对LOG FILE的SIZE有限制,如果有的话,MANUAL里应该有注明才对
回复

使用道具 举报

发表于 2004-2-22 12:16:01 | 显示全部楼层
[code:1]2004年02月22日上午11时42分00秒[root@www root]# ll /var/log/httpd/
总用量 7672
-rw-r--r--    1 root     root       319378  2月 22 11:41 access_log
-rw-r--r--    1 root     root      7390591  2月 22 04:07 access_log.1
-rw-r--r--    1 root     root         9114  2月 22 10:58 error_log
-rw-r--r--    1 root     root        71453  2月 22 04:08 error_log.1
-rw-r--r--    1 apache   apache          0  2月 22 10:45 horde.log
-rw-r--r--    1 apache   apache       3712  2月 22 10:45 php_error.log
-rw-r--r--    1 apache   apache      24133  2月 21 15:22 php_error.log.1
-rw-r--r--    1 root     root            0  2月  6 04:09 ssl_access_log
-rw-r--r--    1 root     root          504  2月 22 10:58 ssl_error_log
-rw-r--r--    1 root     root         2646  2月 20 17:38 ssl_error_log.1
-rw-r--r--    1 root     root            0  2月  6 04:09 ssl_request_log
2004年02月22日上午11时42分06秒[root@www root]#[/code:1]

[code:1]2004年02月22日上午11时44分32秒[root@home amazepc]# cat /etc/logrotate.d/httpd
/var/log/httpd/*log {
    missingok
    notifempty
    sharedscripts
    postrotate
        /bin/kill -HUP `cat /var/run/httpd.pid 2>/dev/null` 2> /dev/null || true
    endscript
}
2004年02月22日上午11时44分40秒[root@home amazepc]#
[/code:1]
回复

使用道具 举报

 楼主| 发表于 2004-2-23 20:54:27 | 显示全部楼层
gugong斑竹
不知道你写的那些代码是什么意思?
我看不明白。
ll /var/log/httpd/
是列出/var/log/httpd下的所有文件,但是...
里面并没有一个文件有超过2G的呀?
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

GMT+8, 2024-11-13 04:30 , Processed in 0.043705 second(s), 16 queries .

© 2021 Powered by Discuz! X3.5.

快速回复 返回顶部 返回列表