Foro de elhacker.net

Programación => Desarrollo Web => Mensaje iniciado por: shamaka en 11 Enero 2011, 23:21 pm



Título: como configurar SSL solo para algunas paginas
Publicado por: shamaka en 11 Enero 2011, 23:21 pm
Hola amigos. Antes que nada quisiera agregar que este es un excelente foro y me encanta publicar aquí mis dudas ya que cuentan con un increible equipo de personas muy inteligentes.  :)

Bueno, mi pregunta es sencilla, quiera configurar mi SSL solo para algunas paginas de mi sitio, por ejemplo, la pagina de registro e inicio de sesión. Esto para proteger las contraseñas y demás datos. Utilizo el archivo .htaccess para la redirecciones, mas o menos algo como esto

RewriteEngine On
RewriteCond %{SERVER_PORT} 80
RewriteRule ^(.*)$ https://www.miweb.com/$1 [R,L]


Quiero saber si pueden ayudarme a que solo la paginas de registro e inicio de sesión inicien con SSL.

Saludos y gracias de ante man.



Título: Re: como configurar SSL solo para algunas paginas
Publicado por: madpitbull_99 en 12 Enero 2011, 13:00 pm
Puedes forzar el uso de SSL por varios métodos:

1. Usando .htaccess para un directorio concreto
Código
  1. RewriteEngine On
  2. RewriteCond %{SERVER_PORT} 80
  3. RewriteCond %{REQUEST_URI} admin
  4. RewriteRule ^(.*)$ https://www.tuweb.com/admin/$1 [R,L]
En este caso se usaria SSL para la carpeta "admin".

2. Usando PHP
Código
  1. if ( !isset($_SERVER['HTTPS']) || strtolower($_SERVER['HTTPS']) != 'on' ) {
  2.  header("Location: " . "https://" . $_SERVER["SERVER_NAME"] . $_SERVER["REQUEST_URI"]);
  3.  exit();
  4. }
Eso por ejemplo, lo implementas en el script de autentificacion.

También se podría hacer en el httpd.conf usando VirtualHost.


Título: Re: como configurar SSL solo para algunas paginas
Publicado por: el-brujo en 12 Enero 2011, 18:05 pm
o mira si lo puedes hacer más sencillo todavía, todos los links en http, menos el formulario de registro e inicio de sesión (en el form action) pones la url en https.


Título: Re: como configurar SSL solo para algunas paginas
Publicado por: shamaka en 12 Enero 2011, 21:39 pm
hola madpitbull_99

Muy buena esta solución

RewriteEngine On
RewriteCond %{SERVER_PORT} 80
RewriteCond %{REQUEST_URI} admin
RewriteRule ^(.*)$ https://www.tuweb.com/admin/$1 [R,L]

Pero cuando redireciono al archivo login.php. Y accede al area de miembros y ssl sigue igual. No se quita. Con ssl en el area de miembros se torna un poco pesada la pagina. Por esto solo me interesa ssl en registro y login.

Trata de arreglar el codigo que me enviaste para hacer que al entrar al area de miembro entrara con http y no con https pero no pude. Me da un error como esta "esta pagina esta intentando hacer varias redirecciones" que puedo hacer ??