`
jackdraw
  • 浏览: 55428 次
  • 来自: ...
最近访客 更多访客>>
文章分类
社区版块
存档分类
最新评论

关于apache 在2003中的运行错误

阅读更多

今天把服务器重启了一下,结果网站过了三四个小时就不能访问了,去看了错误日志

事件类型: 错误
事件来源: Apache Service
事件种类: 无
事件 ID: 3299
日期:  2007-7-14
事件:  8:37:38
用户:  N/A
计算机: JJLOU
描述:
The Apache service named  reported the following error:
>>> [Sat Jul 14 08:37:38 2007] [notice]
 Disabled use of AcceptEx() WinSock2 API     .

有关更多信息,请参阅在 http://go.microsoft.com/fwlink/events.asp 的帮助和支持中心。
是这个错误,查了很多资料,我已经把acceptE()关掉就可以了,先前也发生过这个问题,关掉就好了,结果现在又来了

感觉很奇怪,今天看了这边问题,试试看,能解决问题不? 以下文章的链接是:

http://hi.baidu.com/7655cjc/blog/item/1de9970e36d285e637d12272.html

 
查看文章
   
apache 遇到[error] (OS 10038) 错误
2007-06-01 11:38
我的机器是windows server 2003 主要是用作开发用,除了apache 还装了很多其他软件;

首先一次重新启动后遇到了这个问题:
taskmanager 里有两个httpd进程,其中一个占用cpu 很高 于是去查看event viewer 没有看到问题...........
去看error.log 果然问题出在这里,里面有好多个这样的错误,看来是陷入死循环了。

error] (OS 10038) : Child 3356: Encountered too many errors accepting client connections. Possible causes: dynamic address renewal, or incompatible VPN or firewall software. Try using the Win32DisableAcceptEx directive.

于是我很开心的去网上查解决办法,去了几个国内论坛也去了几个国外的论坛,最先找到的解决办法都是:

解决方法:
编辑httpd.conf

在文件尾加入下面一行

Win32DisableAcceptEx

重启apache

可是我的问题就是还没有解决,以出现了新的问题

 

Fri Jun 01 10:15:27 2007] [notice] Apache/2.2.3 (Win32) PHP/5.1.4 configured -- resuming normal operations
[Fri Jun 01 10:15:27 2007] [notice] Server built: Jul 27 2006 16:49:49
[Fri Jun 01 10:15:27 2007] [notice] Parent: Created child process 3344
[Fri Jun 01 10:15:27 2007] [notice] Disabled use of AcceptEx() WinSock2 API
[Fri Jun 01 10:15:29 2007] [notice] Child 3344: Child process is running
[Fri Jun 01 10:15:29 2007] [notice] Child 3344: Acquired the start mutex.
[Fri Jun 01 10:15:29 2007] [notice] Child 3344: Starting 250 worker threads.
[Fri Jun 01 10:15:29 2007] [notice] Child 3344: Listening on port 80.
[Fri Jun 01 10:15:29 2007] [error] (OS 10038)An operation was attempted on something that is not a socket. : Too many errors in select loop. Child process exiting.
[Fri Jun 01 10:15:29 2007] [notice] Child 3344: Exit event signaled. Child process is ending.
[Fri Jun 01 10:15:30 2007] [notice] Child 3344: Released the start mutex
[Fri Jun 01 10:15:30 2007] [notice] Child 3344: Waiting for 250 worker threads to exit.
[Fri Jun 01 10:15:30 2007] [notice] Child 3344: All worker threads have exited.
[Fri Jun 01 10:15:30 2007] [notice] Child 3344: Child process is exiting
[Fri Jun 01 10:15:30 2007] [notice] Parent: child process exited with status 0 -- Restarting.
[Fri Jun 01 10:15:31 2007] [notice] Apache/2.2.3 (Win32) PHP/5.1.4 configured -- resuming normal operations
[Fri Jun 01 10:15:31 2007] [notice] Server built: Jul 27 2006 16:49:49
[Fri Jun 01 10:15:31 2007] [notice] Parent: Created child process 288
[Fri Jun 01 10:15:31 2007] [notice] Disabled use of AcceptEx() WinSock2 API
[Fri Jun 01 10:15:32 2007] [notice] Child 288: Child process is running
[Fri Jun 01 10:15:32 2007] [notice] Child 288: Acquired the start mutex.
[Fri Jun 01 10:15:32 2007] [notice] Child 288: Starting 250 worker threads.
[Fri Jun 01 10:15:32 2007] [notice] Child 288: Listening on port 80.
[Fri Jun 01 10:15:32 2007] [error] (OS 10038)An operation was attempted on something that is not a socket. : Too many errors in select loop. Child process exiting.

 

 

就这样的不停重复。。。。。。。。。。。
于是继续找。。同时在http server 的文档上查了一下Win32DisableAcceptEx 这个命令
同时找到下面两个可以说是建议吧:
一、Udpsocket Wsa Error = 10038
    首先这也是个10038错误,和winsock相关,我觉得可能有用就看了一下
问题是这样陈述的:
    HI,

cAN ANYBODY HELP IN THE FOLLOWING ERROR:

I STARTED MY SYS TODAY , AND IT SHOWED ME THE ERROR " UDPSOCKET" AND THEN IN ANOTHER DIALOGBOX IT SAID " WSA ERROR = 10038"

NOW I M UNABLE TO CONNECT TO THE NETWORKING MACHINES AND NOR CAN I CONNECT TO THE INTERNET.


CAN ANYBODY HELP IN THIS REGARD ? WD REALLY APPRECIATE THAT .

IT'S PRETTY URGENT.

REGARDS
ARUN


mlegg 给出了解决办法:
If you have updated Windows and have SP2 (you should by now)
Go to the Start button > to the Run box > type cmd and the command window opens

now type: netsh winsock reset

this will repair your corrupted Winsock

if you do not have SP2 yet for some reason, then read this page from
MS on how to repair your Winsock


Afterwards go to Windows Updates and get everything you do not have yet. There has been a lot of updates and patches over the last few months. They come out the 2nd Tuesday of every month, but this month they were released early to fix a critical patch.


同时我也在同时在http server 的文档上看到Win32DisableAcceptEx (使用accept()代替AcceptEx()接受网络链接)这个命令,有一个关于AcceptEx()的介绍:AcceptEx()是一个微软的WinSock2 API ,通过使用BSD风格的accept() API提供了性能改善。一些流行的Windows产品,比如防病毒软件或虚拟专用网络软件,会干扰AcceptEx()的正确操作。如果你遇到类似于如下的错误:

[error] (730038)An operation was attempted on something that is not a socket.: winnt_accept: AcceptEx failed. Attempting to recover.

你就需要使用这个指令来禁止使用AcceptEx()


于是我使用了netsh winsock reset命令也把Symantec AntiVirus 卸载了
重新启动,问题解决


后记:
问题虽然解决了,但是从头到尾还没有完全搞清楚, 还有两个疑问:(1)还是不知道问题到底是怎么产生的,我以前就一真用Symantec AntiVirus,如果是因为它,为什么到现在才产生这个问题,如果说是由于更新病毒库的原因,我自己也不能说服我自己相信这个理由(2)如果是由于系统升级产生的问题那么为什么会产生这个问题?呵呵,饿了,先去吃饭,回来再解决之两个疑问

我又重新把Symantec AntiVirus装起,呀,没有问题,不知道问题是怎么产生的了,就是Symantec AntiVirus还没有更新病毒库呢,哈,学校的网络有点差,毕竟是教育网,怎样才让访问国外的网站速度快一点呢?....

总这可以确定是winsock2 corrupted 了要用 netsh winsock reset 恢复而不是用Win32DisableAcceptEx 把 acceptex() 关掉
分享到:
评论
1 楼 cfanbo 2009-01-12  
Win32DisableAcceptEx 用了这个,内存一直增加!

相关推荐

    Win2003中apache2整合tomcat5和iis6文档

    在Windows Server 2003操作系统中,有时我们需要同时运行IIS(Internet Information Services)和Apache HTTP Server,以便支持不同的Web服务,比如IIS用于处理静态内容,而Apache通过Tomcat来运行Java应用。...

    apache环境配置需要运行库

    在Windows系统上,MySQL同样依赖一些运行库文件,以进行内存管理、错误处理、线程操作等。虽然描述中没有特别提及MySQL的运行库,但在配置WAMP环境时,确保MySQL的运行库完整是至关重要的。 PHP是一种广泛使用的...

    linux上如何让apache运行aspx网站

    ### 如何在Linux上使Apache运行ASPX网站 在Linux环境下部署ASP.NET应用程序是一项常见的需求,尤其是在混合技术栈的应用场景中。本文将详细介绍如何在Linux系统中配置Apache Web服务器以支持ASP.NET(ASPX)应用。 ...

    Apache中文文档中文注解

    - 错误日志记录了Apache运行过程中遇到的各种问题。 6. **CustomLog** - 用于定义自定义的日志文件,记录客户端请求的信息,例如:`CustomLog "/var/log/httpd/access_log" common`。 - 常见的日志格式有`common...

    解决apache对含中文的url网址的支持问题(64位)

    在标题和描述中提到的"关闭了EncodingEngine on才能运行",可能是指在特定环境下,将`mod_encoding`的EncodingEngine指令设置为`Off`能解决中文URL的问题。`EncodingEngine`指令控制了Apache是否自动转换请求的URL...

    win2003下 apache+tomcat集成

    在Windows Server 2003操作系统环境下,Apache...通过上述步骤,你可以在Windows Server 2003上成功集成Apache和Tomcat,实现高效、稳定地运行Java Web应用。记得在实际操作中根据自己的具体环境和需求进行适当的调整。

    Apache Camel中文开发使用指南.zip

    此外,它也支持在OSGi容器(如Apache Karaf)中部署和管理。 7. **分布式系统集成**:Camel的异步处理和负载均衡特性使其在分布式系统中表现出色。配合Camel的云组件,可以轻松实现微服务之间的通信。 8. **事件...

    Apache2.4.6在Linux中安装及配置自启动

    本教程将详细阐述如何在Linux环境中安装Apache2.4.6并设置其自启动,以确保服务器在系统启动时自动运行。 首先,我们需要确保系统已经安装了必要的开发工具和依赖库。在基于Red Hat的系统(如CentOS)上,可以使用...

    apache2中文手册

    Apache2.2是其版本历史中的一个重要里程碑,引入了许多改进和新特性。 Apache2.2手册中文版CHM版是一份详尽的官方文档,为用户提供了安装、配置Apache服务器的指导。这份手册适用于初学者和有经验的管理员,可以...

    关于apache搭建环境

    在Linux中,这可能涉及解压文件、编译源代码和运行安装脚本。 3. 配置Apache:Apache的配置文件通常位于`/etc/httpd/conf/httpd.conf`或`/etc/apache2/httpd.conf`。你需要编辑这个文件,设置服务器的基本信息,如...

    Apache错误日志时时查看

    Apache错误日志是调试Web服务器问题的关键工具,它记录了Apache服务器在运行过程中遇到的各种错误和警告信息。这篇博客文章“Apache错误日志时时查看”可能是关于如何实时监控和分析这些日志文件的教程,这对于PHP...

    Apache_可移植运行时库

    Apache可移植运行时库(APR)是Apache软件基金会自主开发和维护的一套运行时库,其主要目的是为应用程序提供一个可移植的、与平台无关的底层服务层。APR通过使用底层的、跨平台的库来实现一系列功能,包括文件系统...

    Apache2.2中文文档

    2. **虚拟主机**:Apache 2.2支持虚拟主机,允许在同一个服务器上运行多个独立的网站。通过定义NameVirtualHost和指令,可以配置不同的域名指向不同的目录。 3. **模块管理**:Apache以其模块化架构著称。例如mod_...

    Apache官方中文文档

    - **基本认证与摘要认证**:这两种认证机制的配置方法和差异在文档中有详述。 10. **最新版本更新**: - **升级指南**:当有新版本发布时,文档通常会提供升级现有Apache实例的步骤和注意事项。 通过深入阅读和...

    Apache2.0&2.2 中文手册

    Apache2.2中文.chm包含了关于Apache2.2版本的全面指南,包括安装、配置文件解析、模块介绍、错误处理以及性能调优等内容。而Apache2.0中文手册.chm则覆盖了Apache2.0的基本操作和高级特性,帮助用户理解和掌握这个...

    Apache2 中文使用手册

    `logs.html`是关于日志管理的章节,Apache2会记录各种服务器活动,如访问日志、错误日志等,这对于故障排查、性能分析和安全监控至关重要。用户需要知道如何配置日志格式、级别和位置,以及如何分析日志数据。 `...

    Apache2中文文档

    在安装Apache2的过程中,`apache2.exe`文件通常是Windows平台上的安装程序。运行此文件将引导用户完成安装步骤,包括选择安装路径、设置端口号、决定是否作为服务启动等。在Windows上,Apache通常会默认监听80端口,...

    apache中文帮助文档

    3. **虚拟主机**:Apache支持在同一台服务器上运行多个独立的网站,这称为虚拟主机。文档可能会解释如何设置基于IP、域名或端口的虚拟主机。 4. **模块管理**:Apache的核心功能由一系列模块提供,如mod_rewrite...

    apache运行php

    2. **安全设置**:配置 PHP 时应考虑安全性问题,例如避免在生产环境中使用开发模式的错误报告。 3. **性能优化**:可以利用 PHP 的缓存机制来提高性能,例如使用 OpCache。 #### 六、总结 Apache 运行 PHP 的过程...

    Apache2中文使用手册

    Apache2可以在多种操作系统上运行,如Linux、Unix、Windows等。在Ubuntu系统中,可以使用`sudo apt-get install apache2`命令快速安装。安装完成后,Apache2默认会在80端口监听HTTP请求。 配置文件是Apache2的核心...

Global site tag (gtag.js) - Google Analytics