【问题标题】:Detecting mod_php7 in Apache 2.4 .htaccess fails在 Apache 2.4 .htaccess 中检测 mod_php7 失败
【发布时间】:2018-07-01 23:49:56
【问题描述】:

考虑以下.htaccess 指令:

<IfModule mod_php7.c>
    Define PHP_ENABLED
</IfModule>
<IfDefine !PHP_ENABLED>
    Require all denied
</IfDefine>
<IfDefine PHP_ENABLED>
    php_value expose_php    Off
</IfDefine>

它会随着403 Forbidden 而死。 我想是因为它没有检测到mod_php7,或者模块有另一个名字?

更糟糕的是,我在同一个文件中设置了ErrorDocument 403(在 docroot 中 - 在 php-check 之前) - 但在上述情况下,这也被忽略了。

更多信息:
如果我在 PHP 内部的 die(php_version()); 的输出上方省略这些指令,则会产生:7.0.27-1~dotdeb+8.1

任何建议将不胜感激,谢谢。

【问题讨论】:

    标签: .htaccess apache2.4 mod-php


    【解决方案1】:

    指令Define 在 htaccess 上下文中是不允许的。 (见https://httpd.apache.org/docs/current/mod/core.html#define)。

    所以也许您可以在服务器上下文中定义&lt;IfModule .. 部分。

    【讨论】:

    • 谢谢,我从某个地方复制了这些指令;网上有那么多没用的垃圾;人们发布甚至不起作用的代码 sn-ps。 .. 他们应该被拖到街上,然后在背后开枪。
    猜你喜欢
    • 1970-01-01
    • 2016-01-19
    • 2017-08-18
    • 2016-04-06
    • 2018-05-12
    • 2013-09-18
    • 1970-01-01
    • 1970-01-01
    • 2018-06-27
    相关资源
    最近更新 更多