win7下xampp之apache无法正常启用问题解决方案

这问题困扰我很久了,今天终于狠下心花时间来解决它!记录下来,欢迎指教!

(我这边两台机器,一台win7,一台xp外加ubuntu,所以也就懒得搞了)

windows环境下经常会出现xampp之apache无法正常启动问题

一种情况是因为端口号被占

这里提示下IIS,迅雷等工具的默认端口号与apache一样都是80

解决方案:此时可以通过修改apache/conf/目录下httpd.conf文件中的端口号来实现正常启动apache

有两个地方需要修改

1: #Listen 0.0.0.0:80
  #Listen [::]:80
  Listen 80

2: ServerName localhost:80

第二种情况就是我遇到的问题

IIS,迅雷等工具未启动,而apache就是启动不了,xampp中集成的其他如mysql等都可以正常启用

win7下xampp之apache无法正常启用问题解决方案_第1张图片

如上图所示:

此时你如果再点击start按钮,在error.log中会发现如下提示

[Wed Dec 29 11:38:55 2010] [notice] Digest: generating secret for digest authentication ...
[Wed Dec 29 11:38:55 2010] [notice] Digest: done
[Wed Dec 29 11:38:55 2010] [notice] Apache/2.2.14 (Win32) DAV/2 mod_ssl/2.2.14 OpenSSL/0.9.8l mod_autoindex_color PHP/5.3.1 mod_apreq2-20090110/2.7.1 mod_perl/2.0.4 Perl/v5.10.1 configured -- resuming normal operations
[Wed Dec 29 11:38:55 2010] [notice] Server built: Nov 11 2009 14:29:03
[Wed Dec 29 11:38:55 2010] [crit] (22)Invalid argument: Parent: Failed to create the child process.
[Wed Dec 29 11:38:55 2010] [crit] (OS 6)句柄无效。  : master_main: create child process failed. Exiting.
[Wed Dec 29 11:38:55 2010] [notice] Parent: Forcing termination of child process 36

提示的大概意思就是被强行关闭。

解决方案:1:在dos下运行netstat -ano

     2:在xampp control panel中点setup打开命令界面,

     3:选择6 enable mob_perl

     4:重新启动xampp,此时运行http://localhost就应该正常工作了

第三种情况是网上一些网友遇到的问题:

  参见http://cnzhx.net/blog/articles/xampp-windows-apache-start/

  与端口绑定时出现问题,未绑定到需要的端口

  这是你可以根据error.log中的提示,退出占用端口的程序,这样应该能启用apache。

  不过启动那些程序可能又会出错

解决方案:

  可以通过cmd命令行直接查看有无程序占用该端口

  1、运行cmd,然后输入netstat -ano,回车;
  2、查看开头几行包含该端口的那一行最后的pid,为几个数字,把这几个数字记下来;
  3、启动“任务管理器”——“进程”,在“工具栏”——“选择列”前面的框里打上勾;
  4、然后找到与刚才那个pid对应的是哪个程序,很容易就会找到,就是它与该端口进行了绑定(bind);

 

以上三种我想应该能体现大部分朋友apach无法正常启动的问题,希望以后不要再如此纠结!

转载于:https://www.cnblogs.com/lonelystarxing/archive/2010/12/29/1920499.html

你可能感兴趣的:(php,操作系统,数据库)