php - 使用 PHP 检查 AllowOverride 值?

标签 php apache .htaccess

有没有办法使用 PHP 来检查 AllowOverride 的值,看看 .htaccess 是否有任何影响?

最佳答案

我不知道有一种干净、直接的方法可以做到这一点。

如果您对要检查的文件夹具有 http 访问权限,则可以在 .htaccess 文件中写入一些内容,以触发某种输出。

例如,您可以设置一个 header (虽然这对 mod_headers 有额外的依赖性):

<FilesMatch "\.(php)$">
<IfModule mod_headers.c>
Header set htaccess_works "yes"
</IfModule>
</FilesMatch>

然后从 PHP 发出请求,并检查响应 header ,例如使用 curlCURLOPT_HEADER。如果它们包含 htaccess_works header ,它就可以工作。

另一种糟糕但保证独立于特定 Apache 模块工作的方法是以编程方式将乱码写入 .htaccess 文件,然后像上面那样发出 curl 请求,并检查 500 状态码。如果它抛出 500,则 .htaccess 文件得到解释。但如前所述,这很糟糕 - 如果可能,请改用 header 方法。

关于php - 使用 PHP 检查 AllowOverride 值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7137104/

相关文章:

PHP 匹配控制字符但不匹配空格?

php - 在 mysql 中使用 REGEXP 时出错

php - 如何检测或阻止代理浏览

mysql - 带数据库 ID 的 Htaccess 重定向 url

php - .htaccess 文件修改

javascript - 在 Javascript 中设置 Cookie 在值存在时返回未定义

php - 将 mysql 数据导入表,编辑/克隆行,并插入新行

javascript - document.getElementById 到 href 点击

regex - 重定向除图像以外的所有内容

php - CSS路径是php中Url重写的变化