IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Apache Discussion :

Redirection en HTTPS pour une seule page uniquement


Sujet :

Apache

  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Février 2008
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 12
    Par défaut Redirection en HTTPS pour une seule page uniquement
    Bonjour,
    Novice en htaccess j'essaie desespéremment de faire une manipulation sur mon site pour que l'utilisateur quand il s'inscrive bascule sur une page en HTTPS...
    Le truc c'est que je souhaite que cette manipulation ne se fasse que et UNIQUEMENT sur cette page d'inscription ...
    Que faire ?

  2. #2
    Rédacteur
    Avatar de _Mac_
    Profil pro
    Inscrit en
    Août 2005
    Messages
    9 601
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 9 601
    Par défaut
    Donc tu as consulté cette discussion : en quoi ne t'aide-t-elle pas ?

  3. #3
    Membre habitué
    Profil pro
    Inscrit en
    Février 2008
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 12
    Par défaut
    En fait, dans mon htaccess, je spécifie une redirection :
    une page etape inscription est la redirection de la page index.php?page=enreg&etape=X

    J'aimerais que le https se fasse uniquement sur ces étapes d'inscription et je ne saisis pas comment faire ...

  4. #4
    Rédacteur
    Avatar de _Mac_
    Profil pro
    Inscrit en
    Août 2005
    Messages
    9 601
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 9 601
    Par défaut
    La discussion dit comment faire : il faut utiliser mod_rewrite pour identifier les URL à protéger en HTTPS et les autres. J'indique la configuration suivante qui me semble correspondre à ton besoin :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    RewriteEngine on
    RewriteCond %{HTTPS} =on
    RewriteCond %{REQUEST_URI} !^/connexion_sal_ce
    RewriteRule .* http://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
    RewriteCond %{HTTPS} =off
    RewriteCond %{REQUEST_URI} ^/connexion_sal_ce
    RewriteRule .* https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
    Evidemment, il faut remplacer /connexion_sal_ce par l'URL de la page que tu veux protéger.

  5. #5
    Membre habitué
    Profil pro
    Inscrit en
    Février 2008
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 12
    Par défaut
    Et si je veux proteger des pages du genre :
    inscription_etape1.html
    inscription_etape2.html ....

    Si j'ai bien compris dans votre script : ^connexion_sal_ce est un dossier?
    Et que signifie : .* dans la condition de réécriture?
    Dois je définir avant que la page : index.php?page=toto est réécrit en inscription_etape1.html?

  6. #6
    Rédacteur
    Avatar de _Mac_
    Profil pro
    Inscrit en
    Août 2005
    Messages
    9 601
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 9 601
    Par défaut
    .* = n'importe quelle série de caractères, éventuellement aucun.

    Dans ton cas, ça peut être très simple si toutes les pages à protéger commencent par la chaîne de caractères inscription_ : il suffit d'indiquer cette chaîne à la place de connexion_sal_ce.

  7. #7
    Membre habitué
    Profil pro
    Inscrit en
    Février 2008
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 12
    Par défaut
    Bonjour,
    Merci de ton aide !! Je te mets le bout de code que j'ai :

    Dans le HTACCESS :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    RewriteCond %{HTTPS} = on 
    RewriteCond %{REQUEST_URI} !^inscription_etape
    RewriteRule .* http://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
     
    RewriteCond %{HTTPS} = off
    RewriteCond %{REQUEST_URI} ^inscription_etape
    RewriteRule .* https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
     
    RewriteRule inscription.html index.php?page=reg [L]
    RewriteRule ^inscription_etape_([0-9]+)\.html$  index.php?page=reg&etape=$1 [L]
    Au niveau de mon code php je redirige seulement vers inscription_etape_X.html mais je ne sais pas comment faire pour qu'il prenne en compte le HTTPS ...

    D'avance merci

  8. #8
    Rédacteur
    Avatar de _Mac_
    Profil pro
    Inscrit en
    Août 2005
    Messages
    9 601
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 9 601
    Par défaut
    Il manque des / au début de tes URL dans les RewriteCond :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    RewriteCond %{HTTPS} = on 
    RewriteCond %{REQUEST_URI} !^/inscription_etape
    RewriteRule .* http://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
    
    RewriteCond %{HTTPS} = off
    RewriteCond %{REQUEST_URI} ^/inscription_etape
    RewriteRule .* https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
    
    RewriteRule inscription.html index.php?page=reg [L]
    RewriteRule ^inscription_etape_([0-9]+)\.html$  index.php?page=reg&etape=$1 [L]

  9. #9
    Membre habitué
    Profil pro
    Inscrit en
    Février 2008
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 12
    Par défaut
    Bonjour, merci de ta réponse !! cependant, j'ai mis en place le htaccess mais malheureusement il ne prend pas en compte le https... Je pense que cela vient de mon formulaire :

    mon formulaire en effet traite une adresse du type : inscription_etape_X.html

    Devrais je le changer en mettant https://localhost/MONDOSSIER/inscription_etape_X.html?

    Mon code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    echo "<form name=\"valide\" action=\"inscription_etape_2.html\" method=\"post\">
    								<input type=\"hidden\" name=\"etape\" value=\"2\" />
    								<input type=\"hidden\" name=\"offre\" value=\"".$_POST["offre"]."\" />
    </form>
    	<script>document.forms[\"valide\"].submit();</script>";
    Que j'ai essayé d'adapter sans succès :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    echo "<form name=\"valide\" action=\"https://".$_SERVER['SERVER_NAME']."/fromus/inscription_etape_2.html\" method=\"post\">
    								<input type=\"hidden\" name=\"etape\" value=\"2\" />
    								<input type=\"hidden\" name=\"offre\" value=\"".$_POST["offre"]."\" />
    								</form>
    								<script>document.forms[\"valide\"].submit();</script>";
    En me disant que ça pourrait coller :s mais non

  10. #10
    Rédacteur
    Avatar de _Mac_
    Profil pro
    Inscrit en
    Août 2005
    Messages
    9 601
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 9 601
    Par défaut
    Est-ce que le HTTPS fonctionne bien sans le .htaccess ?

    Le .htaccess est dans que répertoire ?

    Forcément, si les pages à protéger sont dans un sous-répertoire, il faut indiquer ce sous-répertoire dans la réécriture :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    RewriteCond %{HTTPS} = on 
    RewriteCond %{REQUEST_URI} !^/forums/inscription_etape
    RewriteRule .* http://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
     
    RewriteCond %{HTTPS} = off
    RewriteCond %{REQUEST_URI} ^/forums/inscription_etape
    RewriteRule .* https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
     
    RewriteRule inscription.html index.php?page=reg [L]
    RewriteRule ^forums/inscription_etape_([0-9]+)\.html$  forums/index.php?page=reg&etape=$1 [L]

Discussions similaires

  1. [XL-2007] changer les filtres des TCD pour une seule page
    Par yeahna dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 18/03/2012, 11h59
  2. Redirection HTTP -> HTTPS pour une seule page
    Par DJOOOO dans le forum Apache
    Réponses: 18
    Dernier message: 15/02/2010, 14h24
  3. Variable Globale pour une seul page
    Par rad_hass dans le forum ASP.NET
    Réponses: 4
    Dernier message: 19/02/2008, 22h01
  4. Réponses: 4
    Dernier message: 27/06/2007, 09h13
  5. plusieurs formulaires pour une seule page ?
    Par lifecraft dans le forum ASP
    Réponses: 9
    Dernier message: 01/02/2006, 09h48

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo