2010-09-24 161 views

回答

5

您可以: 写,如PHP,JSP,ASP.net等服务器端脚本页面生成这个HTML动态

设置您所使用的网络服务器(例如阿帕奇)为不包含欢迎页的目录(如index.html的)做到这点自动

特别是在阿帕奇在这里阅读更多: 编辑httpd.conf: http://justlinux.com/forum/showthread.php?s=&postid=502789#post502789

或添加自动索引MOD: http://httpd.apache.org/docs/current/mod/mod_autoindex.html

+0

apache服务器超出了我的控制范围。 '.htaccess'被禁用。我是一个真正的新手,所以一个简单的工作示例将不胜感激。 – 2010-09-24 07:53:14

+0

你的apache是​​否支持PHP?你必须使用支持服务器端脚本编写的Apache,否则这是不可能的。 – DuduAlul 2010-09-24 07:55:40

+0

@MrOhad我怎么能告诉? – 2010-09-24 07:58:04

2

这不能用纯HTML完成。

但是,如果您有权访问Apache服务器上的PHP(您标记了帖子“apache”),则可以使用easilly - se the PHP glob function。如果没有 - 你可能会尝试服务器端包含 - 这是一个Apache的东西,我不太了解它。

+0

我从来没有写过PHP。如果你可以给一个HTML的工作例子,我可以放在我的目录 - 这将是伟大的! – 2010-09-24 07:44:42

1

你尝试允许它通过的.htaccess此目录?

Options +Indexes 

我用这一段我的目录,其中目录列表我的供应商

+1

这是我的第一选择,但apache服务器超出了我的控制范围,似乎'.htaccess'被禁用。添加'.htaccess'时会出现'内部服务器错误'。 – 2010-09-24 07:55:04

20

禁用对我PHP是这样做的最简单的方法:

<?php 
echo "Here are our files"; 
$path = "."; 
$dh = opendir($path); 
$i=1; 
while (($file = readdir($dh)) !== false) { 
    if($file != "." && $file != ".." && $file != "index.php" && $file != ".htaccess" && $file != "error_log" && $file != "cgi-bin") { 
     echo "<a href='$path/$file'>$file</a><br /><br />"; 
     $i++; 
    } 
} 
closedir($dh); 
?> 

将此放在目录并设置你想要在$路径上搜索的位置。第一条if语句将隐藏你的php文件和.htaccess以及错误日志。它会用链接显示输出。这是非常简单的代码,易于编辑。

+3

像魅力一样工作。 – thefreeline 2014-11-03 14:28:11

+5

这有多个存储的XSS漏洞:文件名可以包含引号和< >等 – 2017-01-03 08:28:21

0

了解HTML非常重要,因为我们可以根据自己的需要创建自己的网站。你可以创建一个简单的index.html文件 的DirectoryIndex index.html的 的DirectoryIndex index.php文件

单指令

DirectoryIndex index.html index.php 

退房这里一个简单的方法来学习HTML Beautifier工具HTML它可以帮助您美化或格式化不整齐,不清晰的HTML代码以清楚地阅读它。此外,它有助于在给定的空间中练习更多的编码。如果您在修改时犯了错误,它会以正确的格式纠正您的错误。它也是开发人员在嵌套的html代码中查找和更正执行错误的非常有用的工具。

8

有足够的有效理由显式禁用apache或其他Web服务器中的自动目录索引。或者,例如,您可能只想在索引中包含某些文件类型。在这种情况下,您可能仍然希望有一个静态生成的索引。特定文件夹的html文件。

这可以通过tree轻松实现 - 这是一个在大多数Linux发行版(例如ubuntu/debian:sudo apt install tree)上可用的简约实用程序,其中还可以生成XML,JSON或HTML输出。

生成深的HTML目录索引一层:

tree -H '.' -L 1 --noreport --charset utf-8 > index.html 

仅包括匹配glob模式该特定类型的文件,例如*.zip文件:

tree -H '.' -L 1 --noreport --charset utf-8 -P "*.zip" > index.html 

-H的参数是什么将被用作基本href,这样可以通过其中这样的相对路径作为.或从web根的绝对路径,如/files-L 1仅将列表限制在当前目录。

我想索引生成器,我可以风格我想要的方式,所以结束了使用this script - 除了具有自定义样式,脚本也将递归生成index.html文件中的所有嵌套子目录。

+1

优秀的解决方案!如果你想省略'index.html'文件中的目录,可以在'tree'命令中加入'--prune' – MarcoS 2017-12-06 14:46:18

相关问题