2010-09-24 38 views

Respuesta

5

Puede: Escribir una página script del lado del servidor como PHP, JSP, etc ASP.net para generar este código HTML de forma dinámica

o

de configuración del servidor web que está utilizando (por ejemplo, Apache) para hacer exactamente eso de forma automática para los directorios que no contienen bienvenida páginas (por ejemplo, index.html)

Específicamente en Apache leer más aquí: Editar httpd.conf: http://justlinux.com/forum/showthread.php?s=&postid=502789#post502789

o añadir el mod autoindex: http://httpd.apache.org/docs/current/mod/mod_autoindex.html

+0

El servidor Apache está fuera de mi control. '.htaccess' está deshabilitado. Soy un novato real en esto, por lo que un simple ejemplo de trabajo sería apreciado. –

+0

¿tu apache soporta PHP? debe usar apache que admita la escritura de guiones del lado del servidor; de lo contrario, es imposible. – DuduAlul

+0

@MrOhad ¿Cómo puedo saberlo? –

2

Esto no se puede hacer con HTML puro.

Sin embargo, si tiene acceso a PHP en el servidor Apache (etiquetó la publicación "apache") se puede hacer fácilmente - se the PHP glob function. Si no, puede intentar Server Side Include, es algo de Apache, y no sé mucho al respecto.

+0

Nunca escribí PHP. Si pudiera dar un ejemplo de trabajo para un HTML que pueda poner en mi directorio, ¡sería genial! –

1

¿trató de permitir que para este directorio a través de .htaccess?

Options +Indexes 

lo uso para algunos de mis directorios donde listado de directorio está desactivada por el profesional

+1

Esa fue mi primera opción, pero el servidor apache está fuera de mi control y parece que '.htaccess' está deshabilitado. Obtengo 'Internal Server Error' al agregar' .htaccess'. –

20

Para mí PHP es la manera más fácil de hacerlo:

<?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); 
?> 

colocar esto en su directorio y establezca dónde desea que busque en $ path. La primera instrucción if ocultará su archivo php y .htaccess y el registro de errores. A continuación, mostrará la salida con un enlace. Este es un código muy simple y fácil de editar.

+3

Funcionó como un amuleto. – thefreeline

+5

Esto tiene múltiples vulnerabilidades XSS almacenadas: los nombres de archivos pueden contener comillas y < >, etc. –

0

Conocer el HTML es muy importante ya que podemos crear nuestro propio sitio web para nuestras necesidades. Se puede crear un archivo index.html sencilla DirectoryIndex index.html DirectoryIndex index.php

Directiva individual

DirectoryIndex index.html index.php 

ver aquí una manera fácil de aprender HTML en HTML Beautifier herramienta que le ayuda a embellecer o formatee su código HTML desordenado y poco claro para leerlo con claridad. También ayuda a practicar más conjunto de codificación en el espacio dado. Si cometió un error al modificar, lo corregirá con el formato correcto. También es una herramienta muy útil para los desarrolladores para encontrar y corregir los errores de ejecución en el código html anidado.

8

Existen suficientes razones válidas para deshabilitar explícitamente los índices de directorios automáticos en apache u otros servidores web. O, por ejemplo, es posible que desee incluir solo ciertos tipos de archivos en el índice. En tales casos, es posible que desee tener un índice generado estáticamente.html archivo para carpetas específicas.

Esto se puede lograr fácilmente con tree - una utilidad minimalista que está disponible en la mayoría de las distribuciones de Linux (por ejemplo ubuntu/debian: sudo apt install tree) y que entre otras cosas pueden generar XML, JSON o salida HTML.

Generar un directorio HTML índice de un nivel de profundidad:

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

incluir sólo determinados tipos de archivos que coinciden con un patrón global, por ejemplo, *.zip archivos:

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

El argumento para -H es lo que se utiliza como base href, por lo que puede pasar una ruta relativa como . o una ruta absoluta desde la raíz de la web, como /files . -L 1 limita el listado al directorio actual solamente.

yo quería un generador de índice que pude estilo de la manera que quería, así que terminamos usando this script - además de tener un estilo personalizable, el guión también generará de forma recursiva el archivo index.html en todos los subdirectorios anidados.

+1

excelente solución !!! si quiere omitir directorios en su archivo 'index.html', agregue' --prune' al comando 'tree' – MarcoS

Cuestiones relacionadas