在Apache Lounge的Win 7机器上使用Apache 2.4 64位VC10构建,如何启用文件夹文件视图?我只想查看每个文件夹中没有索引文件的文件。
这仅用于开发目的。我尝试过使用Options Indexes / All选项并重启我的服务器几次。我得到的只是403 Forbidden。
答案 0 :(得分:5)
对于Apache 2.4,如果您启用了Directory Indexes,例如index.html或index.php,则必须首先禁用它,然后才能在Web浏览器中显示文件夹和文件。
<Directory "/vhost/www/htdocs/path/to/folder">
DirectoryIndex disabled
Options Indexes
</Directory>
答案 1 :(得分:2)
<Directory "/srv/www/htdocs">
Options +Indexes
################
Order allow,deny
Allow from all
</Directory>
答案 2 :(得分:2)
Apache中的指令已从2.2版更改为2.4及更高版本。
我正在运行2.4.7版本,基本的vhost文件如下所示:
<VirtualHost 192.168.1.5:80>
DocumentRoot /srv/html/
ServerName some.placeoverthe.rainbow
<Directory /srv/html/>
Options Indexes ## Allows directory browsing.
Require all granted ## Allow all request
</Directory>
</VirtualHost>
采取Apache网站:https://httpd.apache.org/docs/2.4/upgrading.html
以下是执行相同访问控制的旧方法和新方法的一些示例。
在此示例中,所有请求都被拒绝。
2.2配置:
Order deny,allow
Deny from all
2.4配置:
Require all denied
在此示例中,允许所有请求。
2.2配置:
Order allow,deny
Allow from all
2.4配置:
Require all granted
在以下示例中,example.org域中的所有主机都被允许访问;所有其他主机都被拒绝访问。
2.2配置:
Order Deny,Allow
Deny from all
Allow from example.org
2.4配置:
Require host example.org
目录索引
采取Apache网站:http://httpd.apache.org/docs/2.4/mod/core.html
Options指令控制特定目录中可用的服务器功能。
选项可以设置为None,在这种情况下,不会启用任何额外功能,也不会启用以下一项或多项功能:
所有强>
All options except for MultiViews.
<强> ExecCGI 强>
Execution of CGI scripts using mod_cgi is permitted.
<强>了FollowSymLinks 强>
服务器将遵循此目录中的符号链接。这是默认设置。
即使服务器遵循符号链接,它也不会更改用于匹配部分的路径名。
FollowSymLinks和SymLinksIfOwnerMatch选项仅适用于部分或.htaccess文件。
省略此选项不应被视为安全限制,因为符号链接测试受竞争条件限制,使其可以绕过。
<强>含强>
Server-side includes provided by mod_include are permitted.
<强> IncludesNOEXEC 强>
Server-side includes are permitted, but the #exec cmd and #exec cgi are disabled. It is still possible to #include virtual CGI scripts from ScriptAliased directories.
<强>索引强>
如果请求映射到目录的URL但没有 该目录中的 DirectoryIndex (例如,index.html),然后 mod_autoindex 将返回该目录的格式化列表。
<强>多视图强>
使用mod_negotiation允许协商内容“MultiViews”。
<强> 注意:的强> 如果设置为除了以外的任何位置,则会忽略此选项 mod_negotiation需要真实的资源来进行比较和评估。
<强> SymLinksIfOwnerMatch 强>
The server will only follow symbolic links for
which the target file or directory is owned by
the same user id as the link.
作为旁注: 您可能需要检查并确保运行apache的用户有权从该目录中读取。在Windows上这可能不是问题,但在Linux上它很可能是一个问题。在大多数Linux发行版上,默认用户通常是:
WWW的数据
所以你需要更改该目录的权限,以允许apache访问,如果该目录由运行的用户apache以外的其他人拥有。