Tengo un proyecto de cliente en el que necesito forzar HTTPS para una determinada carpeta y forzar HTTP para todas las demás. Puedo implementar con éxito HTTPS para la carpeta que deseo, pero luego todos los enlaces al resto del sitio terminan en HTTPS. Me gustaría tener una regla que fuerce a las solicitudes de que cualquier cosa "no" en la carpeta segura sea forzada a regresar a HTTP. Esto es lo que tengo hasta ahora:Forzar HTTPS en ciertas URL y forzar HTTP para todas las demás
RewriteEngine On
RewriteCond $1 !\.(gif|jpe?g|png)$ [NC]
RewriteCond %{HTTPS} !=on
RewriteRule ^(my) https://%{HTTP_HOST}%{REQUEST_URI} [NC,R=301,L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /index.php/$1
'mi' es el nombre de la carpeta que tengo que forzar HTTPS para.
¿Alguna idea?
Actualización: también probé:
RewriteEngine On
RewriteCond $1 !\.(gif|jpe?g|png)$ [NC]
# Force HTTPS for /my
RewriteCond %{HTTPS} !=on
RewriteRule ^(my) https://%{HTTP_HOST}%{REQUEST_URI} [NC,R=301,L]
# Force HTTP for anything which isn't /my
RewriteCond %{HTTPS} =on
RewriteRule !^my http://%{HTTP_HOST}%{REQUEST_URI} [NC,R=301,L]
# Remove index.php from URLs
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /index.php/$1
Pero en vez de solicitudes de/mi ser forzado a través de HTTPS que ahora acaba de resolver a http://www.example.com/index.php/my
:?
¡Gracias, me ha ahorrado mucho tiempo! FWIW, en Wordpress, el htaccess básico de Wordpress IfModule ya elimina index.php de las URL. – Jason