Quiero evitar que los usuarios que no hayan iniciado sesión accedan directamente desde la carpeta de carga dentro de wp-content. Lo he intentado poniendo las siguientes reglas en htaccess.conf en el servidor de AWS Lightsail. Después de eso, funciona bien, pero el sitio ahora está roto. ¿Alguien puede ayudarme a averiguar por qué está roto? Cuando elimino las reglas de htaccess.conf, el sitio se carga bien.
<Directory "/opt/bitnami/apps/wordpress/htdocs/"> # Protect all files within the uploads folder <IfModule mod_rewrite.c> RewriteEngine On RewriteCond %{HTTP_COOKIE} !.*wordpress_logged_in.*$ [NC] RewriteCond %{REQUEST_URI} ^(.*?/?)wp-content/uploads/.* [NC] RewriteRule . https://%{HTTP_HOST}%1/wp-login.php?redirect_to=%{REQUEST_URI} [L,QSA] </IfModule> </Directory>Lo arreglé, así que básicamente necesito evitar el acceso directo a una carpeta que está dentro de la carpeta wp-content/uploads. Así que acabo de crear archivos .htaccess dentro de esa carpeta y puse las siguientes reglas y ahora funciona bien. Gracias a todos
Motor de reescritura encendido
RewriteCond %{HTTP_COOKIE} !^.*wordpress_logged_in.*$ [NC]
Regla de reescritura ^(.*)$ - [R=403,L]
Agregue este código en su archivo .htaccess .
RewriteCond %{REQUEST_FILENAME} -s RewriteRule ^wp-content/uploads/(.*)$ dl-file.php?file=$1 [QSA,L]