apache - listar - ocultar carpetas servidor web
¿Cómo desactivo la exploración de directorios? (12)
Abra su archivo .htaccess e ingrese el siguiente código en
Options -Indexes
Asegúrese de presionar la tecla ENTER (o la tecla RETORNO si usa una Mac) luego de ingresar las palabras "Opciones -Indice" para que el archivo termine con una línea en blanco.
Quiero deshabilitar la exploración de directorios de la carpeta / galerias y todos los subdirectorios
Índice de / galerias / 409
* Parent Directory * i1269372986681.jpg * i1269372986682.jpg * i1269372988680.jpg
Además de los dos métodos mencionados (edite /etc/apache2/apache2.conf o agregue Options -Indexes en el archivo .htaccess), aquí hay otro
a2dismod autoindex
Reinicie el servidor apache2 luego
sudo service apache2 restart
Crea un archivo .htaccess con lo siguiente:
Options -Indexes
Edite / Cree un archivo .htaccess
dentro de /galerias
con esto:
Options -Indexes
mod_autoindex módulo mod_autoindex proporciona navegación por el mod_autoindex .
Esta no es una respuesta, solo mi experiencia:
En mi Ubuntu 12.04 apache2, no encontré Indexes
en 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 para sites-available/default-ssl
.
La mejor forma de hacerlo es deshabilitarlo con el servidor web apache2. En mi Ubuntu 14.X - abra /etc/apache2/apache2.conf
cambie 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>
luego reinicia apache por:
sudo service apache2 restart
Esto deshabilitará la lista de directorios de todas las carpetas que apache2.
Para completar la respuesta de @ GauravKachhadiya:
IndexIgnore *.jpg
significa "ocultar solo los archivos de extensión .jpg de la indexación".
La directiva IndexIgnore usa expresiones comodín para hacer coincidir directorios y archivos.
un carácter de estrella, que coincide con cualquier carácter en una cadena, por ejemplo: foo o foo.extension, en el siguiente ejemplo, vamos a desactivar la lista de directorios, no archivos ni directorios aparecerán en el índice:
IndexIgnore *
O si desea ocultar archivos espacificos, en la lista del directorio, entonces podemos usar
IndexIgnore *.php
* .php => coincide con una cadena que comienza con cualquier char y termina con .php
El ejemplo anterior oculta todos los archivos que terminan con .php
Prueba esto dentro de tu código:
IndexIgnore *
Pruebe esto en .htaccess
:
IndexIgnore *.jpg
Puede colocar un archivo vacío llamado index.html
en cada directorio que no desee enumerar. Esto tiene varias ventajas:
- Esto (generalmente) requiere cero configuración en el servidor.
- Seguirá funcionando, incluso si el administrador del servidor decide usar "AllowOverride None" en la configuración del servidor. (Si usa 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.
Teóricamente, la autoindexación podría desencadenarse con un archivo diferente (esto está controlado por la opción DirectoryIndex
), pero todavía tengo que encontrarme con esto en el mundo real.
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
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. Abra el archivo httpd.conf en la carpeta apache y busque la línea que se ve de la siguiente manera:
Options Includes Indexes FollowSymLinks MultiViews
luego elimine los índices de palabras y guarde el archivo. Reinicie Apache. Eso es