zoukankan      html  css  js  c++  java
  • Apache XAMPP Fails to start under Windows XP

    Apache XAMPP Fails to start under Windows XP

    I’ve been installing XAMPP a hundred times before since 2005 and back then everything was running well. But yesterday was kind of exceptional, I got error that I couldn’t solved till I found this great solution from apachefriends. Before I gave you the solution, let me show you what I’ve done to get this thing right.

    Case:

    - Installing XAMPP version: win32-1.7.7

    After installing it and trying to start from XAMPP control panel, I got message

    “Busy… Apache service started”

    but of course the Apache service wasn’t. Then I checked the error log of Apache C:xamppapachelogserror.log  I found this message:

    [Wed Sep 19 16:36:59 2012] [error] Attempt to reload DynaLoader.pm aborted. Compilation failed in require at C:/xampp/perl/site/lib/ModPerl/Const.pm line 18. BEGIN failed–compilation aborted at C:/xampp/perl/site/lib/ModPerl/Const.pm line 18. Compilation failed in require at C:/xampp/perl/site/lib/Apache2/Const.pm line 18. BEGIN failed–compilation aborted at C:/xampp/perl/site/lib/Apache2/Const.pm line 18. Compilation failed in require at C:/xampp/apache/conf/extra/startup.pl line 9. BEGIN failed–compilation aborted at C:/xampp/apache/conf/extra/startup.pl line 9. Compilation failed in require at (eval 2) line 1.
    [Wed Sep 19 16:36:59 2012] [error] Can’t load Perl file: C:/xampp/apache/conf/extra/startup.pl for server localhost:8080, exiting…

    The last shot,  I opened the services window from Control PanelAdministrative ToolsServices and started the apache service directly, voila.. I got this error:

    Windows could not start the Apache2 on Local Computer. For more information, review the System Event Log. If this is a non-Micorsoft service, contact the service vendor, and refer to service-specific error code 1.

    Either one, from my previous experiences, I could handle this problem by doing one or two things below:

    1. Check the firewall, deactivate it or add exception for localhost or 127.0.0.1, so it won’t block this address. OR
    2. Check the IIS service, if it’s working, stop it, OR
    3. Change the port number of Apache. Go to C:xamppapacheconfhttpd.conf
      Search:
      - “Listen 80″ and modify to “81″ or “8080″
      - “ServerName localhost:80″ follow the prev one.
      OR
    4. Change the virtual host number of Apache. Go to C:xamppapacheconfextrahttpd-ssl.conf
      Search
      :
       - “<VirtualHost _default_:443>” modify to “4499″
      - “ServerName localhost:443″ follow the prev one.

    Done with those modifications, I re-started the XAMPP service, but still I couldn’t access my localhost from any browser.

    Then I tried to find any solution from uncle Google and most readers suggest solutions mostly the same. I’ll list them here so you can try them all to find which one is the best and can fix your problem.

    1. This is the most command thing to do when you are desperate, UNINSTALLING AND INSTALLING your XAMPP application and restart your computer. :D Is it working? No?
    2. Do you have Skype or NOD32 Antivirus or  other Google Apps running? If yes, for skype and google apps, close those application (shut it down) and for NOD32, you can go to advance set-up then un-chek web access protection for HTTP, HTTPS. Try to start you apache service.
      Still not working?
    3.  Go to command prompt (CMD) to check whether port 80 is still used by other application or not by typing this: netstat -ao -p tcp. Is there any IP that using that port? If yes, keep the PID number and go to Task ManagerProcesses, do you see PID column? If you don’t, click menu:View –> Select Column, check the Process Identifier (PID).  Still keep the PID numberFind it in the processes list and kill if you found. Try to start you  apache service again.
      Still not working?
    4. My last shot and this solution works for me.
      Search for perl.conf file in  C:xamppapacheconfextraperl.conf, open this file and you’ll see this:
      LoadFile “C:/xampp/perl/bin/perl510.dll”
      LoadModule perl_module modules/mod_perl.so
      PerlPostConfigRequire “C:/xampp/apache/conf/extra/startup.pl”
      Add this “PerlSwitches -T”after the second line, so it becomes like this: LoadFile “C:/xampp/perl/bin/perl510.dll”
      LoadModule perl_module modules/mod_perl.so
      PerlSwitches -T 
      PerlPostConfigRequire “C:/xampp/apache/conf/extra/startup.pl”

       

      Try to start you apache service again, voila….. it does work right? no? -__- it works for me.

     Okay, that’s all I got, if your apache is still not working, let’s ask uncle Google again. Special thanks toapachefriends.

  • 相关阅读:
    通过注册表设置指定用户启动项的权限
    音频知识学习
    回老家也不忘老本......
    探索DOMNode
    表单填写示例(通过JavaScript访问DOM)
    最近的一些感悟
    C#和Java中的Substring()
    验证ASP.NET页生命周期时间的触发顺序
    解析c语言背后的汇编代码
    oracle nvl()函数在使用中出现的问题
  • 原文地址:https://www.cnblogs.com/snake-hand/p/3177677.html
Copyright © 2011-2022 走看看