2010-03-27 11 views

Respuesta

274

Crear un archivo .htaccess con el siguiente:

Options -Indexes 
+8

Esto incluso funciona en un o en un archivo .conf actual – chrismarx

+0

@chrismarx ¿en qué archivo .conf debería ponerlo? .htaccess no parece estar habilitado en mi servidor, y he leído que es mejor no usarlo de todos modos. Sin embargo, tengo acceso a todos los archivos del servidor, ya que es un vps. –

+0

Bueno, depende, puede agregar configuración adicional al httpd.archivo conf, pero ordinariamente, configura una importación en ese archivo, para mirar otro directorio, que luego importa varios fragmentos de conf – chrismarx

23

Editar/Crear un archivo .htaccess dentro de /galerias con esto:

Options -Indexes 

La exploración de directorios la proporciona el módulo mod_autoindex.

15

Una de las cosas más importantes es configurar un servidor web apache seguro es desactivar la exploración de directorios. Por defecto, Apache viene con esta función habilitada, pero siempre es una buena idea deshabilitarla a menos que realmente la necesite. Abrir el archivo httpd.conf en la carpeta de apache y encontrar la línea que se ve de la siguiente manera:

Options Includes Indexes FollowSymLinks MultiViews 

luego retire índices de texto y guardar el archivo. Reinicie Apache. Eso es todo

+0

No funciona para mí. – Danijel

+0

funcionó para mí –

+1

Perfecto. Deshabilitarlo en toda la máquina. ¿Por qué sería esto habilitado por defecto, no tengo ni idea ... – eduncan911

0

Prueba esto en .htaccess:

IndexIgnore *.jpg 
+0

Esto no pareció tener ningún efecto para mí. ¿Qué se supone que haga? – brandaemon

3

Ésta no es una respuesta, sólo mi experiencia:

En mi apache2 Ubuntu 12.04, no encuentra Indexes en cualquiera apache2.conf o httpd .conf, afortunadamente lo encontré en sites-available/default. Después de eliminarlo, ahora no aparece en la lista del directorio. Puede tener que hacerlo por sites-available/default-ssl.

178

La mejor manera de hacerlo es deshabilitarlo con webserver apache2. En mi Ubuntu 14.x - abierta /etc/apache2/apache2.conf cambio de

<Directory /var/www/> 
     Options Indexes FollowSymLinks 
     AllowOverride None 
     Require all granted 
</Directory> 

a

<Directory /var/www/> 
     Options FollowSymLinks 
     AllowOverride None 
     Require all granted 
</Directory> 

reinicie Apache por:

sudo service apache2 restart 

Esto permite desactivar la lista de directorios de todas las carpetas que sirve apache2.

+1

"Opciones -índices" funciona para mí. – Jay

+5

'sudo service apache2 ** reload **' será suficiente! –

+1

@Jay También probé "Opciones -índices", pero Apache no comenzó la palabra siguiente. Estoy ejecutando la versión del servidor: Apache/2.4.18 (Ubuntu). Sin embargo, el uso de "Opciones FollowSymLinks" funcionó según la respuesta de Dung. Solo tengo curiosidad por saber qué versión de Apache y SO estás ejecutando. Tal vez es una cosa de la versión? – MikeyE

1

Para completar @ respuesta de GauravKachhadiya:

IndexIgnore *.jpg 

medios "ocultar solamente .jpg archivos de extensión de la indexación

Directiva

IndexIgnore utiliza la expresión comodín para coincidir contra los directorios y archivos

    ..
  • un personaje estrella, que coincide con cualquier carácter en una cadena, por ejemplo: foo o foo.extensión, en el siguiente ejemplo, vamos a apagar el listado de directorios, no hay archivos o directorios aparecerá en el índice:

    IndexIgnore *

O si lo desea ocultar archivos spacific, en el listado del directorio, entonces podemos utilizar

IndexIgnore *.php 

* .php => coincide con una cadena que comienza con cualquier carbón y termina con .php

el ejemplo anterior se oculta todos los archivos que finalizar con .php

8

Puede colocar un archivo vacío llamado index.html en cada directorio que no desee enumerar. Esto tiene varias ventajas:

  • (por lo general) requiere cero configuración en el servidor.
  • Seguirá funcionando, incluso si el administrador del servidor decide utilizar "Permitir no anotar ninguna" en la configuración del servidor. (Si utiliza los archivos .htaccess, esto puede generar muchos mensajes "Error 500 - error interno del servidor" para sus usuarios).
  • También le permite mover sus archivos de un servidor a otro, nuevamente sin tener que meterse con la configuración de Apache.

En teoría, el autoindexing podría estar provocado por un archivo diferente (esto es controlado por la opción DirectoryIndex), pero todavía tengo que encontrar esto en el mundo real.

18

Aparte de los dos métodos anteriormente mencionados (edición /etc/apache2/apache2.conf o añadir Opciones -Indexes en el archivo .htaccess), aquí es otro

a2dismod autoindex 

Reiniciar el servidor apache2 después

sudo service apache2 restart 
+2

Puede usar 'a2dismod -f autoindex' para la ejecución del comando _no-blocking_. –

+0

¡Buena opción nuclear! Esto funciona para carpetas 'Alias' y cualquier otra ruta servida por Apache. – kontextify

1

probar este dentro de su código:

IndexIgnore * 
0

Si elige modificar su archivo httpd.conf para resolver esto y tiene varias directivas de Opciones, entonces debe agregar un - o un + antes de cada directiva. Ejemplo:

Opciones -Indexes + FollowSymLinks

0

abrir su archivo .htaccess e introduzca el código siguiente en

Options -Indexes 

Asegúrese de que pulsa la tecla (o la tecla de retorno si utiliza un Mac) ENTER después de ingresar las palabras "Opciones -Indice" para que el archivo termine con una línea en blanco.

Cuestiones relacionadas