如何在 Apache 2.4 上使用标签 <If ...> 测试文件是不是存在?

Posted

技术标签:

【中文标题】如何在 Apache 2.4 上使用标签 <If ...> 测试文件是不是存在?【英文标题】:How to test if file exists with the tag <If ...> on Apache 2.4?如何在 Apache 2.4 上使用标签 <If ...> 测试文件是否存在? 【发布时间】:2014-11-26 02:27:00 【问题描述】:

我想测试我的 Apache 2.4 的 httpd.conf 中是否存在一个文件。

我使用这样的标签:

<If "%DocumentRoot/maintenance.enable -f"> ...code to execute ... </If>

但是我的代码不好,apache的服务不想启动。 我在许多网站上阅读了很多教程或文档,但从未找到答案:(

请帮帮我...

【问题讨论】:

【参考方案1】:

对于 Apache 2.4.34 及更高版本,要使用的备用指令是

在这种情况下,语法是:

<IfFile %DOCUMENT_ROOT . '/maintenance.enable'>
... code to execute ...
</IfFile>

【讨论】:

【参考方案2】:

您应该阅读 Apache 错误日志,因为它可能会提供一些关于如何解释它的提示。

不管怎样,正确的语法是:&lt;If "-f %DOCUMENT_ROOT . '/maintenance.enable'"&gt;

【讨论】:

以上是关于如何在 Apache 2.4 上使用标签 <If ...> 测试文件是不是存在?的主要内容,如果未能解决你的问题,请参考以下文章

如何只允许从 Apache Httpd 2.4 上的特定主机访问?

在 Ubuntu 14.04 上配置 apache 2.4 以启用 CORS

xModRedirect 在 apache 2.2 与 apache 2.4 上的工作方式不同 如何在 2.2 上工作?

如何在 redat 6 上配置和编译具有 ldap 支持的 apache 2.4

如何在centos 7上执行html文件(php-fpm和apache 2.4)中的php代码

Apache 升级 2.2 -> 2.4 问题