博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
APMServ5.2.6win10系统Apache、MySQL5.1启动失败解决办法
阅读量:6910 次
发布时间:2019-06-27

本文共 2986 字,大约阅读时间需要 9 分钟。

    今天想在本地测试网站源码能否正常运行,如果可以就转空间了,然而下载了APMServ之后发现系统Apache、MySQL5.1启动均失败,小白的人表示只能借助百度,用了一个小时的时间终于解决了,虽然坎坷,但还是欣慰,为了防止以后再发生类似的事情到处百度,还是决定把解决办法记录下来。

    首先,在电脑左下角找到“运行”程序,输入“regedit”打开系统注册表
    找到:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\HTTP,点击HTTP后在右侧可以找到Start
    选中“Start”,右键,点击”修改“,将默认值(一般都是3)修改为0.
    点击确定,然后重启电脑。
    到这里,重启APMServ,显示的是
Apache启动失败,请检查相关配置,而
MySQL5.1启动成功。接下来需要做的是
    1、找到Apache文件夹找到Apache\conf\extra\httpd-ssl.conf
    2、
httpd-ssl.conf用记事本打开
    3、
用记事本的查找功能  查找/cgi-bin
    4、
 改为
    
注意是这样的这行代码之前是定位到E盘而我的电脑是没有E盘的只有C盘,所以路径是不对的,我改成了C盘。然后再以管理员身份重启
APMServ,成功了。
 
注:如果不行依次做下列方法(做一次启动一次服务器)

解决办法之一: 

把左下角的SSL钩上了,如果你没有用证书,就把那个去掉,有的朋友去掉就可以了。也可能再装了证书钩上SSL也可以用了。

解决办法之二: 

看了说的把SSL勾掉的办法,也解决不了。后来就去查卡巴,也没看到有什么设置影响;用APM自带的一个解决软件冲突的功能,执行后问题依然。怀疑是不是APM所在的文件夹的父文件夹是中文的,对它有影响,删掉重建,还是不行。 检查操作系统“设置 - 管理工具 - 服务” 里面的选项,有一个Telnet选项被禁止了,这才想起来安装XP之后,担心安全问题,所以把远程协作给关掉了,估计因此把Telnet的功能就给禁止了,所以现在赶紧把它设置成手动开启。 开启Telnet后,再启动APMServ5.2.0,也可能就正常。

解决办法之三: 

建议不要经常加载和卸载今天在调试添加虚拟主机和虚拟目录时,忽然发现重启APMServ有问题,总是不能加载Apache,觉得很奇怪,因为昨天以及解决了这个问题我以为。在论坛里看了一下,有建议说不要频繁重启APMAerv,于是卸载,关机。过了一会儿开机,首先开APMServ,发现正常了。而且,发现昨天设置的Telnet,其实现在根本尚未手动启动。 
得出结论:
1、昨天帖子不准确,虽然昨天调整TELNET与启动正常有关系,但今天没关系,原因不清楚;(今天把远程协作打开了,可能有关联)
2、APMServ频繁启动关闭的确不太好,容易造成加载不正常。

解决办法之四: 

是不是安装在了带中文的目录了,这个程序不能使用中文目录的。如果是,删掉重新装一下。

解决办法之五: 

1、可以尝试将PHP的安装目录设置为系统的环境变量:右键点击“我的电脑”-“属性”-“高级”-“环境变量”-“系统变量”,修改Path,加上“D:\APMServ5.2.6\PHP;D:\APMServ5.2.6\PHP\ext”路径。
注意用英文分号;进行分隔,同时上面的“D:\APMServ5.2.6\PHP;D:\APMServ5.2.6\PHP\ext”是我的安装路径,记得换成你的路径。
2、或者把需要用到的dll复制到操作系统的System32文件夹中。即把PHP和PHP\ext下面的.dll文件拷到C:\WINDOWS\system32文件夹中。

解决办法之六: 

上面5个办法还是解决不了,而php.ini里的extension_dir配置是正确的,还是不行的话,可能是以前在本机安装过PHP,有一些残留文件,windows PATH变量或拷贝到C:\WINDOWS\system32下的dll文件被Apache优先加载了,而没有加载应该加载的APACHE目录中的dll,
注意:windows加载dll文件的顺序是按系统环境变量PATH里指定的目录的先后来的,一般是%SystemRoot%\system32;%SystemRoot%,在安装Apache+PHP的时候如果出现“Unable to load dynamic library”错误,但配置文件又是正确的情况下,一定要注意这些目录下有没有当前PHP版本需要使用的dll不同版本的同名文件。

解决办法之七:

按上面6个办法改了又试,试了又改,也弄了n次仍然不行,点击"Apache设置(A)-查看运行日志(E)",发现下面的文字:
PHP Warning: [eAccelerator] This build of "eAccelerator" was compiled for PHP version 5.2.6. Rebuild it for your PHP version (5.2.9) or download precompiled binaries.\n in Unknown on line 0
PHP Fatal error: Unable to start eAccelerator module in Unknown on line 0

由上面的日志可以清楚的判断到是php版本的原因。由于PHP version (5.2.6) 不会改动,所以问题就是eAccelerator编译时的版本要用5.2.9了。

打开D:\APMServ5.2.6\Zend\eAccelerator文件夹,马上可以看到eAccelerator.dll这个文件,再在文件夹D:\APMServ5.2.6\PHP下面搜索一下包含eAccelerator的关键字

可以发现只有php.ini里面包含了eAccelerator.dll的引用。现在唯一的关键就是下载eAccelerator的5.2.9版本了,
找了好久终于找到下载地址了:http://www.sitebuddy.com/PHP/Accelerators/eAccelerator_windows_binaries_builds,注意下载eAccelerator 0953 for PHP 5.2.9,不要下错了文件,下来后
直接放到D:\APMServ5.2.6\Zend\eAccelerator文件夹中,再到php.ini文件中把
[eaccelerator]
zend_extension_ts="D:/APMServ5.2.6/zend/eAccelerator/eAccelerator.dll"
改为
[eaccelerator]
zend_extension_ts="D:/APMServ5.2.6/zend/eAccelerator/eAccelerator0953_5.2.9.dll"
就可以了
注意:上面的提到的相关路径依据你自己解压AMPServ时设置的路径,使用的系统是windows 2003 server。

转载于:https://www.cnblogs.com/Im-Victor/p/9292109.html

你可能感兴趣的文章
man/ls/clock/date/echo笔记
查看>>
Unity 5.3.5p8 C#编译器升级
查看>>
python 3.5 成功安装 scrapy 的步骤
查看>>
【Linux】linux常用基本命令
查看>>
数组中重复的数字
查看>>
【Hadoop】如何形象描述大数据生态?
查看>>
Objective-C Runtime(转)
查看>>
Linux下Mysql的odbc配置
查看>>
Entity Framework 不支持DefaultValue
查看>>
Linux运维基础命令笔试题--看看你会多少?
查看>>
spring声明式事务 同一类内方法调用事务失效
查看>>
PHP对自己I/O流访问的封装(转)
查看>>
Android Fragment学习笔记(二)----Fragment界面添加和管理
查看>>
在CentOS下安装tomcat并配置环境变量(改默认端口8080为8081)
查看>>
攻击流量的清洗
查看>>
[转载] K3漏油器全紫铜替换原硅胶垫教程。标准姿势
查看>>
Incomplete types-不完全类型
查看>>
eclipse maven build、maven clean、maven install和maven test的区别 精析
查看>>
阿里云 Caused by: redis.clients.jedis.exceptions.JedisDataException: ERR invalid password
查看>>
哈哈,找到一本好书。
查看>>