apache当没有index文件时如何显示目录文件的全部文件名

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了apache当没有index文件时如何显示目录文件的全部文件名相关的知识,希望对你有一定的参考价值。

apache 中当没有index.文件时如何显示目录中文件全部文件名,我的只显示部分文件名,不完全,后面是省略号。望高手指点,谢谢!

在httpd.conf 和 httpd-vhosts.conf中的  <Directory ????> </Directory>如下设置,重启apache即可:

<Directory  "设置你的路径">
Options +Indexes +Includes +FollowSymLinks +MultiViews
AllowOverride All
#Require local
IndexOptions Charset=UTF-8  #编码格式,防止中文乱码
IndexOptions NameWidth=*    #根据文件名自动调整列宽
Allow from all
</Directory>

官方文档: http://httpd.apache.org/docs/2.4/mod/mod_autoindex.html

参考技术A 给个截图看看是什么情况追问

本回答被提问者采纳

apache目录权限控制

<Directory 目录名></Directory>  定义一个目录

 

Options:目录中将使用哪些服务器特性

None  //不启用任何额外特性

All  //启用除MultiViews之外的所有特性(默认设置)

Indexes  //当用户访问该目录时,找不到index文件,则返回该目录下的文件列表给用户

FollowSymLinks  //可以在该目录中使用符号连接,这样就访问目录之外的文档 

MultiViews  //允许内容协商的多重视图

Includes  //允许服务器端包含

IncludesNOEXEC  //允许服务器端包含,但禁用#exec命令和#exec CGI

ExecCGI //允许执行CGI脚本

另外:

+ 号表示合并上层目录的Options和当前目录的Options

- 号表示移除上层目录的Options选项

<Directory /> 
      Options Indexes FollowSymLinks 
</Directory> 

<Directory /www> 
    Options Includes   //当前目录只有Includes 
</Directory> 
<Directory /> 
    Options Indexes FollowSymLinks 
</Directory> 

<Directory /www> 
    Options +Includes -Indexes  //当前目录有FollowSymLinks和Includes
</Directory> 

 

AllowOverride

None //禁止搜索该目录下的.htaccess文件。
All //允许使用该目录下的.htaccess文件。

由于Apache对一个目录的访问控制设置是能够被下一级目录继承的,

因此对根目录的设置将影响到它的下级目录,

如果从根目录就允许查看.htaccess文件,

那么Apache就必须一级一级的查看.htaccess文件,对系统性能会造成影响,

因此对于系统根目录设置AllowOverride None不但对于系统安全有帮助,也有益于系统性能。

<Directory />
   Options FollowSymLinks
   AllowOverride None
</Directory>

 

 

目录访问控制

Apache2.2 使用order和allow,deny

Order Allow,Deny  //order决定最后使用哪一条规则
Allow from all
Deny from ip1 ip2  //deny是最后一条,符合ip1和ip2的访问会被禁止
Order Deny,Allow  //最后一条是allow,所以第三条deny不会生效
Allow from all
Deny from domain.org  
Order Allow,Deny  
Allow from ip1
Deny from all   //deny是最后一条,all包含ip1,所以所有访问都会禁止

Apache2.4 使用require

Require all granted  //允许所有访问

Require all denied  //拒绝所有访问

Require local  //仅允许本地访问(默认)

Require all granted
Require ip 192.168.0.1  //仅允许IP:192.168.0.1 访问

Require all granted
Require not ip 192.168.0.1 //仅禁止IP:192.168.0.1访问

 

以上是关于apache当没有index文件时如何显示目录文件的全部文件名的主要内容,如果未能解决你的问题,请参考以下文章

apache的文件列表是怎么实现的

如何通过 apache 渲染 .phtml 文件

apache显示目录文件列表

Apache 列出目录文件而不是 index.php

Apache 列出目录文件而不是 index.php

为啥我把php+mysql+apache都安装好了,可是当我在打开默认目录的时候显示的是文件下载