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

Langage PHP Discussion :

réécriture d'url pour supprimer paramètres et rediriger http vers https [PHP 7]


Sujet :

Langage PHP

  1. #1
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2013
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Distribution

    Informations forums :
    Inscription : Avril 2013
    Messages : 2
    Par défaut réécriture d'url pour supprimer paramètres et rediriger http vers https
    Bonjour,

    Je suis en cours de formation développeur web et le PHP n'est pas au programme, du coup je m'initie en parallèle.
    J'ai réalisé une petite application grâce à différents cours mais je bloque sur la réécriture d'url malgré plusieurs tentatives de compréhension pour cumuler 2 réécriture.
    Rediriger http vers http et garder la suppression des paramètres en url

    Je me rends compte que j'ai écris une grosse ânerie
    Dans mon index.php, j'ai voulu mettre en pratique le routage en définissant une variable URL comme ceci :
    J'ai voulu définir une constante URL pour l'url de base que j'appelle en PHP comme ça
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    define("URL", str_replace("index.php", "", (isset($_SERVER['HTTPS']) ? "https" : "http") . "://$_SERVER[HTTP_HOST]$_SERVER[PHP_SELF]"));
    Dans mon index.php, j'ai voulu mettre en pratique le routage
    dans un "try catch" je teste si le paramètre "page est vide je renvoi vers la page login comme ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    try {
        if(empty($_GET['page'])) {
            $page = "login";
        } else {
            $url = explode("/", filter_var($_GET['page'], FILTER_SANITIZE_URL));
            $page = $url[0];
        }
    Ensuite avec un switch case je renvoi vers la bonne page, en testant si l'utilisateur est déjà connecté comme ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    switch($page) {
            case "login":
                if (!isset($_SESSION['userConnectValid'])) {
                    $userController->login();
                } else {
                  //ici fonction qui affiche un message disant que l'utilisateur est déjà connecté
                  // je le renvoie à l'accueil
                    header("Location:" . URL . "accueil");
                }
                break;
    dans mon htaccess
    j'ai mis ce qui suit

    Code apache : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    RewriteEngine On
     
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
     
    RewriteRule ^(.*)$ index.php?page=$1

    ce qui marchait très bien jusqu'à ce que veuille ajouter la redirection http vers https comme ça :

    Code apache : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    RewriteCond %{HTTP_HOST} ^app\.demo\.domaine\.tld$
    RewriteRule ^/?$ "https\:\/\/app\.demo\.domaine\.tld\/" [R=301,L]

    Je cherche une source d'informations qui me permettrait de comprendre comment faire, je croyais avoir compris mais ce n'est clairement pas le cas, les différents recherches ne m'ayant pas permis d'aboutir.

    J'ai tente comme ça :

    Code apache : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    RewriteEngine On
     
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
     
    RewriteRule ^(.*)$ index.php?page=$1
    RewriteCond %{HTTP_HOST} ^app\.demo\.domaine\.tld$
    RewriteRule ^/?$ "https\:\/\/app\.demo\.domaine\.tld\/" [R=301,L]

    Qui ne donne rien un page 404 et je ne poste pas mes autres essais par compassion pour vos yeux


    Merci d'avance si quelqu'un me lit et pour toutes pistes

    edit : Vu le taux de retour quasi nul, je suis de plus en plus inquiet
    Je suis aussi preneur de toutes remarques qui fait que c'est le silence total et que cela n'inspire personne de me remettre dans le droit chemin.
    Cela va sans dire mais c'est mieux quand c'est dit : je n'attends pas de solution toute faite, juste des pistes pour comprendre et réussir à la faire moi-même

  2. #2
    Expert confirmé
    Avatar de mathieu
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    10 668
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 10 668
    Par défaut
    qu'est ce que vous voulez dire par "ça ne donne rien" ? la page est blanche ?

  3. #3
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2013
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Distribution

    Informations forums :
    Inscription : Avril 2013
    Messages : 2
    Par défaut
    Citation Envoyé par mathieu Voir le message
    qu'est ce que vous voulez dire par "ça ne donne rien" ? la page est blanche ?

    Désolé

    Cela renvoie une erreur 404 : "The requested URL was not found on this server. "

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 8
    Dernier message: 03/10/2013, 11h10
  2. Réécriture de l'URL pour passer d'une page JSP vers une autre
    Par meriem meryoma dans le forum Servlets/JSP
    Réponses: 1
    Dernier message: 20/04/2013, 08h53
  3. Réécriture d'url sur plusieurs paramètres
    Par nicolas2603 dans le forum Apache
    Réponses: 10
    Dernier message: 14/10/2011, 19h01
  4. Réécriture d'URL pour une pagination
    Par sliverman dans le forum Apache
    Réponses: 1
    Dernier message: 20/06/2010, 22h33
  5. [URL Rewriting] réécriture d'url pour inclusion php
    Par kriskafr dans le forum Apache
    Réponses: 3
    Dernier message: 25/02/2008, 11h37

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