最近搭建在Windows Apache部署 Python Django运行环境时报 The Requested Operation has failed的错误。
很奇怪的是直接运行httpd.exe文件是可以运行的,但是通过ApacheMonitor.exe管理启用项目就报“ The Requested Operation has failed”。
从网上查,发现大部分无外乎下面4种情况,但是我按照下面4种解决办法尝试解决都不能解决。也就是说我不是这四种情况
于是我用的是另外的办法去查询问题,找到了问题的解决办法。
-----------------------------下面是网上常见的几种问题和解决办法-------------------------
apache无法启动提示the requested operation has failed 的错误信息,有以下几种解决方法:
1.80端口占用
apache默认使用的端口是80,而IIS和迅雷用的也是80端口。
2.软件冲突
装了某些软件会使apache无法启动如Dr.com 打开网络连接->TcpIp属性->高级->WINS标签 把netbios的lmhosts对勾去掉,禁用tcp/ip的netbios. 然后再启动应该就可以了。
3.httpd.conf配置错误
apache的配置文件httpd.conf出错,在windows里启动它,会提示the requested operation has failed。解决方法:用命令行模式启动apache,并带上参数,apache会提示你哪句有误,然后就可以针对性的解决,命令如下: httpd.exe -w -n "Apache2" -k start
还有一种情况:
即使你这次启动了,下次你都有可能启动失败
在运行里输入:netsh winsock reset
一会儿cmd会提示你重启,不用理会,现在APACHE已经可以启动了。
**其实就是一个winsock的修复**
-----------------------------问题排查和解决思路-------------------------
其实就是通过日志找到问题原因,通过apache目录下的logs目录,查看error.log文件来定位问题。
清理日志文件内容后,重启apache的ApacheMonitor.exe项目管理软件,错误日志得到如下信息,
经过排查发现都是一个原因,也就是环境变量没有配置 pythonhome参数 ,随配置该参数后问题得到解决。