昨天在电脑上安装XAMPP,想跑几个PHP程序玩玩。安 装过程中一切正常,安装完毕,启动Apache,却怎么也启动不了。总是启动了,又莫名其妙的自 动停止了。我在开始–>运行–>输入services.msc进入“服务(本地)”,在这里手动启动,还是没有成功,给出个警告框。提示 说:本地计算机上的Apache2.2服务启动后又停止了。一些服务自动停止,如果它们没有什么可做的,例如“性能日志和警报”服务。我也不知道这是什么 意思。就去Google了一下。
现将整理后的解决方案公布如下:
在桌面右键网上邻居–>点击“属性”–>打开“网络连接”窗口–>在“本地连接”右键单击“属性”–>打开“本地连接 属性”对话框–>在“常规”选项卡下的“此连接使用下列项目(o):”内双击“Internet协议(TCP/IP)”–>打开 “Internet协议(TCP/IP)属性”对话框–>点击右下脚的“高级(V)…”按钮–>打开“高级TCP/IP设置”对话框 –>单击“WINS”选项卡–>选中“禁用TCP/IP上的NetBIOS(s)”。–>一直点击“确定”按钮即可。
另外:我们首都师范大学的同学们注意了,咱们上网用的Dr.COM 客户端是跟Apache有些冲突的(具体我也不知道)。如果你在启动了Dr.COM客户端的情况下启动Apache这时还会出现上述错误。一定要关掉 Dr.COM客户端。这时应该就可以正常启动Apache服务器了。 ^_^Enjoy!(二)
这两天不知道为什么Apache启动时总时出现问题,找了很多方法还是不行,郁闷了好几天。
每次手动启动apache 时总是提示:本地计算机上的Apache服务启动后又停止了,一些服务自动停止,如果他们没什么可做的例如”日志和警报”服务 。
今天终于把问题给解决了,心里舒服多了。
解决方法如下:
在网络连接属性里选
tcp/ip属性–> 高级–>wins标签—>下面有启用LMHOSTS查询,及netbios的选项
改为禁用,任务管理器里立刻就可以看到apache进程cpu迅速下降(不再尝试开子进程)
经测试暂时还没有问题
观察中
后续:
似乎问题和上面的没有关系
可能还和tcpip.sys这个文件有关系
特别是xp sp2系统
再续:
晚上继续试验
除了上面两个外
极端方法是关掉apache的日志
怎么样关闭apache2的日志文件(logfile)?这是个问题,因为写日志会给系统带来很大的损耗。关闭日志以后,甚至最高可以提高整体性能近40%(粗略估计)那么如何关闭日志呢?
可以通过降低log级别的办法来减少日志读写。
这里要提醒的是,这么做将给“入侵检测”以及其他基于日志分析的工作带来麻烦。所以请谨慎使用。
LogLevel用于调整记于错误日志中的信息的详细程度。(参阅ErrorLog指令)。可以选择下列级别,依照重要性降序排列:
Level Description Example
emerg 紧急 – 系统无法使用。 “Child cannot open lock file. Exiting”
alert 必须立即采取措施。 “getpwuid: couldn’t determine user name from uid”
crit 致命情况。 “socket: Failed to get a socket, exiting child”
error 错误情况。 “Premature end of script headers”
warn 警告情况。 “child process 1234 did not exit, sending another SIGHUP”
notice 一般重要情况。 “httpd: caught SIGBUS, attempting to dump core in …”
info 普通信息。 “Server seems busy, (you may need to increase StartServers, or Min/MaxSpareServers)…”
debug 出错级别信息 “Opening config file …”
通常情况建议使用 crit 到 warn 之间的设置
(三)
上面的方法虽然解决了Apache的问题,可是这样会出现偶尔上不了网的现象。经过多天的资料搜索,终于找到了一个较为完美的解决方法了,方法如下:
网上邻居->;查看网络连接->本地连接(你正在使用的那个连接,一般是这个名字)->;右键点它选”属性”->;选中”internet协议(TCP/IP)
->; 属性->;高级->;切换到”wins”标签->点击”导入LMhosts(M)” 然后选择你安装 apache目录下的bin文件夹(我安装的目录是D:\\AppServ\\Apache2.2\\bin) 导入httpd.exe后 就可以开启Apache 也可以上网了