Apache 2 AddDescription与文件/目录名称完全匹配

kjthegm6  于 2022-11-16  发布在  Apache
关注(0)|答案(2)|浏览(147)

我试图添加一个描述到(apache生成的)目录列表中。但是我找不到一个方法来获得描述文本,使其只应用于文件/目录名的精确匹配。
例如,如果我有以下目录/文件结构

phpinfo2.php
phpinfo/
phpinfo.php
another_file.php

我使用指令:

AddDescription "PHP" phpinfo

这与4个文件/目录中的3个匹配,如下所示:

phpinfo2.php         PHP
phpinfo/             PHP
phpinfo.php          PHP
another_file.php

然而我真正想要的是:

phpinfo2.php
phpinfo/             PHP
phpinfo.php
another_file.php

因为我只想让AddDescription指令匹配确切的文件/目录名。
文档(http://httpd. apache. org/docs/2.2/mod/mod_autoindex. html #adddescription)说“文件是要描述的文件的文件扩展名、部分文件名、通配符表达式或完整文件名。”-所以不可能只匹配完整的文件/目录名?
任何帮助都非常感谢,或者如果有其他的方法来实现我想要的。谢谢。

ddhy6vgd

ddhy6vgd1#

您可以执行以下操作:

AddDescription " " *?phpinfo
AddDescription " " phpinfo?*
AddDescription "PHP" phpinfo

Apache应用第一个匹配的规则,并跳过后面的规则。这里的技巧是使用" ",它是不匹配任何内容的文件/文件夹的默认内容,使任何包含phpinfo但不完全是phpinfo的文件/文件夹无效,这样只有名为phpinfo的文件/文件夹才能应用描述。
请注意,您不能使用AddDescription "" ...,因为Apache不允许空字符串参数,并且会抛出错误。
参考:Apache 2.4文档

mwyxok5s

mwyxok5s2#

看起来你可以通过“第一次命中匹配”来完成。
因此,指令应如下所示:

AddDescription " " *.php
AddDescription "PHP" phpinfo

相关问题