.htaccess - listing - htaccess redirect
Ocultar carpetas con.htaccess (8)
Como lo menciona duskwuff, lo que necesitas es
Options - Indexes
Esto causará un error 403 prohibido en ese directorio en particular. Por lo tanto, para proporcionar una página de error personalizada necesitará
ErrorDocument 403 myErrorPage.html
Espero que esto ayude
¿Es posible ocultar las carpetas en mi carpeta raíz? Por si acaso mi index.php desaparecería ¿sabes?
¿También puedo mostrar el error 404 que no se encuentra si alguien lo solicita?
En mi caso, lo hice pero me muestra el Error 500. Este es mi .htaccess
RewriteEngine on
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_URI} !^/[0-9]+/..+/.cpaneldcv$
RewriteCond %{REQUEST_URI} !^//.well-known/pki-validation/[A-F0-9]{32}/.txt(?:/ Comodo/ DCV)?$
RewriteRule ^index/.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !^/[0-9]+/..+/.cpaneldcv$
RewriteCond %{REQUEST_URI} !^//.well-known/pki-validation/[A-F0-9]{32}/.txt(?:/ Comodo/ DCV)?$
RewriteRule . /index.php [L]
</IfModule>
# END WordPress
Options - Indexes
Gracias
Esta fue mi solución preferida para el mismo problema (aunque muestra un Acceso denegado en lugar de 404):
<files "/path/to/single/file/or/folder">
order allow,deny
deny from all
</files>
Esto también le da la opción de dar acceso a ciertas direcciones IP (en este caso, el acceso a todas las IP)
La "/ path / to / single / file / or / folder" puede reemplazarse con regex si desea utilizar un patrón en su lugar. De lo contrario, tiene que usar varios bloques para cada archivo o carpeta específica al que desea bloquear el acceso.
Lo que quieres es probablemente
Options -Indexes
que solo dará un error 404 si no se encuentra ningún archivo DirectoryIndex.
Para mi siempre funciona con sumar.
<Directory "/var/www/yourfolder"> IndexIgnore * </Directory>
al archivo / etc / apache2 / sites-available / default
Resuelvo esto agregando un index.html en todas las carpetas a las que no quiero acceder. La página index.html contiene una sola línea con el siguiente header("Location:thepageiwanttoshown.html")
. De esta manera, si el usuario visita accidentalmente las carpetas restringidas, será redirigido sobre la marcha. Espero que ayude
Si realmente desea mostrar un error 404 para la (s) subcarpeta (s), intente lo siguiente en /.htaccess
:
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ - [R=404,L]
Si se solicita una /folder
/subfolder
, la regla anterior lo reescribirá en /404
.
IndexIgnore *
Lo anterior evitaría que todos los archivos sean listados. Aquí *
actúa como un comodín. Podrías reemplazarlo con algo más específico, si es necesario.