apache2 由于正则表达式而启动失败

apache2 由于正则表达式而启动失败

我最近为 apache2 启用了 mod_proxy,在断电重新启动服务器后,每当我尝试启动 apache2 时都会出现以下错误:

* Starting web server apache2                                                  
Syntax error on line 39 of /etc/apache2/sites-enabled/000-default:
Regex could not be compiled
Action 'start' failed.
The Apache error log may have more information.

第 39 行包含以下内容:

 <ProxyMatch *>

我尝试读取 error.log 文件,但找不到有关此错误的任何信息。

在服务器突然关闭之前,Apache2 可以正常运行(使用这些确切的设置)。我的问题当然是:我该如何解决这个问题?

答案1

根据文档,该ProxyMatch指令将正则表达式作为其参数。 *它本身并不是正则表达式——*只是表示“前一个字符零次或多次”。因此,匹配所有内容的正则表达式如下所示:

<ProxyMatch .*>

即“任意字符” ( .) 零次或多次 ( *)。

请注意,该Proxy命令使用 glob 样式匹配,因此这是有效的:

<Proxy *>

我猜这就是你的意思。

了解更多信息

相关内容