Windows 7上的WAMP无法启动。 Apache错误“非法覆盖选项要求”

时间:2015-07-07 07:38:34

标签: apache wamp

WAMP徽标仍为橙色,不会变为绿色。我已经通过查看服务确定它是Apache无法启动的。但我无法开始。 MySQL启动并运行正常。

我让WAMP运行好几周了。这只是今天出现了。

这不是一个端口80 / Skype问题,有很好的文档,因为我可以测试端口80就好了,它没有被使用。

如何更深入地解决问题,找出为什么WAMP apache无法启动?

2 个答案:

答案 0 :(得分:2)

从你的回答中我看到你做了什么,但实际上是错误的。

该部分代码应如下所示

<Directory />
    AllowOverride none 
    Require all denied
</Directory>

这是在服务器根文件夹上设置Apache基本权限的指令,应设置为denied。您首先拒绝访问所有内容,然后仅允许访问实际上允许Apache查看的文件夹,这显然是出于安全原因。

你问题的可能原因是你使用记事本查看了httpd.conf并且在AllowOverride all之后以某种方式删除了换行符,使其成为非法参数,即同一行上的2个单独指令。

由于一些奇怪的原因,WAMPServer 2.5发布了一些具有UNIX行结尾而不是DOS行结尾的文件!这就是记事本遇到问题的原因。

最好的想法是下载notepad ++(免费),并且可以处理具有unix行结尾的文件。

对于名为“WAMPServer 2.5发行说明和更正”的WAMPServer论坛上的read through this document可能会有用

答案 1 :(得分:0)

好的,在找到帮助之后,我已经解决了这个问题。这是一个apache配置错误。我仍然不确定是什么造成的,但是如果它适合你的话,我就是这样解决的。

通过在wamp目录中使用CMD,我看到错误发生在httpd.conf文件中。我能够在我的代码编辑器中打开该文件(记事本不显示换行符,因此无法读取),并且我只是删除了有问题的代码。

解决apache配置错误的步骤:

  1. 使用命令行(CMD)访问wamp apache目录(如果需要,使用x:将驱动器更改为驱动器x \ bin \ apache \ apache2.xx \ BIN

  2. 运行httpd.exe -S以请求apache验证httpd.conf文件

  3. 读取返回的错误(如果有)。识别行号,文件和错误。

  4. 在代码编辑器中打开 apache2.x.x \ conf \ httpd.conf 文件,转到违规行,然后更改有问题的代码。

  5. 在这种情况下,验证例程返回:

    AH00526: Syntax error on line 241 of V:/wamp/bin/apache/apache2.4.9/conf/httpd.conf:  
    Illegal override option Require
    

    我打开了我的httpd.conf文件,在第240行找到了:

    <Directory />
        AllowOverride all Require all denied
    </Directory>
    

    我简单地删除了Require all denied位,保存了conf文件,启动了Apache,然后瞧。我不明白该选项的目的是什么,或者它是如何设置的,但是wamp现在已经被删除了,就像魅力一样。