mod_autoindex 在 Apache 2.4 上

mod_autoindex on Apache 2.4

我正在尝试使用 mod_autoindex 和 FancyIndexing 设置一个站点,将我的自定义 header 置于目录列表之上。我 运行 遇到的问题是,无论我告诉它使用当前目录中的那个还是固定位置的那个,我的系统都表现得好像我的 HEADER.html 不存在一样/repos/HEADER.html

配置文件autoindex.conf有

ReadmeName README.html
HeaderName HEADER.html

在其中,我还尝试将这些行添加到我的虚拟主机的 /repo 目录部分,但注意已更改。此设置在 CentOS 6.6 上运行,使用 Apache 2.4.6 和来自 CentOS 的 scl 存储库的 PHP 5.4.16。下面是我的虚拟主机配置的副本以供参考。任何帮助或建议将不胜感激。

<VirtualHost 10.0.2.15:8080>
  ServerName reflector.localdomain

  ## Vhost docroot
  DocumentRoot "/opt/rh/httpd24/root/var/www/html"
  ## Alias declarations for resources outside the DocumentRoot
  Alias /icons "/opt/rh/httpd24/root/usr/share/httpd/icons"

  ## Directories, there should at least be a declaration for /opt/rh/httpd24/root/var/www/html

  <Directory "/opt/rh/httpd24/root/var/www/html">
    Options FollowSymLinks MultiViews
    AllowOverride None
    Require all granted
  </Directory>

  <Directory "/opt/rh/httpd24/root/var/www/html/repos">
    Options Indexes FollowSymLinks MultiViews
    IndexOptions FancyIndexing FoldersFirst IgnoreCase SuppressDescription VersionSort XHTML
    AllowOverride None
    Require all granted
    DirectoryIndex disabled
  </Directory>

  ## Logging
  ErrorLog "/var/log/httpd24/MainSite_error.log"
  ServerSignature Off
  CustomLog "/var/log/httpd24/MainSite_access.log" combined

  ## Custom fragment
  ProxyPassMatch "^/(.*\.php(/.*)?)$" "fcgi://127.0.0.1:9000/opt/rh/httpd24/root/var/www/html/"
</VirtualHost>

原来这个需要mod_mime。我所要做的就是将 include ::apache::mod::mime 添加到我的 Puppet 清单中,然后就成功了。我已经在 CentOS 6 + scl 和 CentOS 7 的原始设置上验证了这一点。