请教下大家,XAMPP中,Apache无法启动,下面是error.log的信息。[Wed Jun 08 09:53:42 2011] [error] Can't locate XML/Simple.pm in @INC (@INC contains: C:/xampp/perl/lib C:/xampp/perl/site/lib . C:/xampp/apache) at (eval 19) line 3.\n
[Wed Jun 08 09:53:42 2011] [error] Can't load Perl module XML::Simple for server localhost:80, exiting...XZMPP Control中显示的信息是:
Busy...
Apache service started但是实际状态,这个服务并没有启动。
麻烦用过XAMPP的朋友帮忙看下怎么解决。
我本机原来的Apache、Tomcat已经被我卸载干净了,本地的IIS是禁用的。通过 netstat -ano查询端口。80端口没有被占用。我刚安装这个XAMPP是正常的,可以四个服务(Apache\MySQL\FileZilla\Mercury)都能启动。但是重启系统后,Apache就不能启动了,其他三个都正常。如果我把这个XAMPP卸载了,再重新安装,这个就可以启动。
所以现在很诡异,我需要找到问题所在,以免每次都要重新安装程序。谢谢。

解决方案 »

  1.   

    他不是说的很清楚吗?
    Can't load Perl module XML::Simple ...
    无法加载 Perl 模块 ....
      

  2.   

    问题是刚安装好的程序,我检查过,也是没有这个文件的。但是怎么不提示错误呢?
    而是在开始用了,重启了隔了两天,才出的问题。我这两天在做其他的项目没有对电脑安装或者删除PERL相关的东西。昨天我手动下载了这个Simple.pm文件,然后换个提示错误了。ocsinventory-server: Can't load SOAP::Transport::HTTP* - Web service will be unavailable
    ocsinventory-server: Can't load SOAP::Transport::HTTP* - Web service will be unavailable
    [Wed Jun 08 15:29:05 2011] [warn] pid file C:/xampp/apache/logs/httpd.pid overwritten -- Unclean shutdown of previous Apache run?
    [Wed Jun 08 15:29:05 2011] [notice] Digest: generating secret for digest authentication ...
    [Wed Jun 08 15:29:05 2011] [notice] Digest: done
    [Wed Jun 08 15:29:09 2011] [notice] Apache/2.2.17 (Win32) mod_ssl/2.2.17 OpenSSL/0.9.8o PHP/5.3.4 mod_perl/2.0.4 Perl/v5.10.1 configured -- resuming normal operations
    [Wed Jun 08 15:29:09 2011] [notice] Server built: Oct 18 2010 01:58:12
    [Wed Jun 08 15:29:09 2011] [notice] Parent: Created child process 144
    Terminating on signal SIGTERM(15)
    AP::Transport::HTTP* - Web service will be unavailable
    ocsinventory-server: Can't load SOAP::Transport::HTTP* - Web service will be unavailable
    [Wed Jun 08 15:29:11 2011] [notice] Digest: generating secret for digest authentication ...
    [Wed Jun 08 15:29:11 2011] [notice] Digest: done
    [Wed Jun 08 15:29:13 2011] [notice] Child 144: Child process is running
    [Wed Jun 08 15:29:13 2011] [notice] Child 144: Acquired the start mutex.
    [Wed Jun 08 15:29:13 2011] [notice] Child 144: Starting 150 worker threads.
    [Wed Jun 08 15:29:13 2011] [notice] Child 144: Starting thread to listen on port 443.
    [Wed Jun 08 15:29:13 2011] [notice] Child 144: Starting thread to listen on port 80.
    Terminating on signal SIGTERM(15)
      

  3.   

    启动apache之前应该有一些关联性的服务必须启动,否则无法启动。
    可能是你安装程序停用了相关服务!重启电脑是最好的办法,呵呵!
      

  4.   

    楼主 你是不是下错版本了  我看你这是LINUX上的吧 怎么提示里有WIN32
      

  5.   

    以前我用xampp的时候也有这个状况,结果没有解决,后来换成wampmanager就ok了.You can try.
      

  6.   

    可能是之前80端口已经被占用了,重启是好办法。可以自己分开安装apache, mysql, php呢,把apache设置为开机启动,应该不会出现这样的问题
      

  7.   

    apache 目录中 log/httpd.pid 文件缺失,且 httpd.exe 失效。
    再下载一个安装把,把这两个文件实例就可以解决你的问题。
    但有可能会重新出现之前的问题。
    这主要出现在 XAMPP 的 1.7.4 的版本中。此版本中的 mysql.pid 也存在这种情况 。