Apache, url rewriting, bloquer accès direct
Résolu
Utilisateur anonyme
-
Massamba -
Massamba -
Bonjour,
J'ai un fichier htaccess comme ceci (je met que ce qui peut être utile pour ma question) :
Je voudrais faire en sorte :
- Qu'une erreur 404 ou 403 soit automatiquement redirigée vers l'url "erreur/403" ou "erreur/404"
- Que "erreur/x" soit réécrit en "message.php?id=x" (et que ca soit invisible pour l'utilisateur)
- Que l'url "forum/" soit réécrit en "index.php?page=forum" (invisible pour l'utilisateur)
- Que, lorsque l'url de base (/) est appellée, l'utilisateur soit redirigé vers l'url "/accueil" (visible par l'utilisateur)
- Que "/accueil" soit réécrit en "index.php?page=accueil" (invisible pour l'utilisateur)
Jusqu'ici, pas trop de problème. Là ou ca se complique, c'est que je voudrais qu'un appel direct a "index.php", éventuellement avec des paramètres (c'est à dire quand l'utilisateur tape ca dans sa barre d'addresse), il soit redirigé vers "erreur/404".
Je ne parviens pas à faire en sorte d'être redirigé dans ce cas, et que les autres pages comme "accueil" ou "forum" marchent.
Une idée ?
Merci d'avance.
J'ai un fichier htaccess comme ceci (je met que ce qui peut être utile pour ma question) :
RewriteEngine on Options +FollowSymLinks ErrorDocument 403 erreur/403 ErrorDocument 404 erreur/404 RewriteRule ^(/?)$ accueil [L,R] RewriteRule ^accueil(/?)$ index.php?page=accueil [L] RewriteRule ^forum(/?)$ index.php?page=forum [L] RewriteRule ^erreur/([0-9]+)(/?)$ message.php?id=$1 [L] RewriteRule ^index.php message.php?id=404 [L,R]
Je voudrais faire en sorte :
- Qu'une erreur 404 ou 403 soit automatiquement redirigée vers l'url "erreur/403" ou "erreur/404"
- Que "erreur/x" soit réécrit en "message.php?id=x" (et que ca soit invisible pour l'utilisateur)
- Que l'url "forum/" soit réécrit en "index.php?page=forum" (invisible pour l'utilisateur)
- Que, lorsque l'url de base (/) est appellée, l'utilisateur soit redirigé vers l'url "/accueil" (visible par l'utilisateur)
- Que "/accueil" soit réécrit en "index.php?page=accueil" (invisible pour l'utilisateur)
Jusqu'ici, pas trop de problème. Là ou ca se complique, c'est que je voudrais qu'un appel direct a "index.php", éventuellement avec des paramètres (c'est à dire quand l'utilisateur tape ca dans sa barre d'addresse), il soit redirigé vers "erreur/404".
Je ne parviens pas à faire en sorte d'être redirigé dans ce cas, et que les autres pages comme "accueil" ou "forum" marchent.
Une idée ?
Merci d'avance.
A voir également:
- Apache, url rewriting, bloquer accès direct
- Url - Guide
- Telechargement direct - Accueil - Outils
- Vue satellite en direct gratuit de ma maison - Guide
- Acces rapide - Guide
- Bloquer pub youtube - Accueil - Streaming
5 réponses
Laissez tomber, j'ai trouvé.
Je ne vous remercie pas pour votre aide inexistante.
La solution consiste à filtrer dans le code PHP (avec $_SERVER['REQUEST_URI']) si ca intéresse quelqu'un. Après, en fonction de ca on redirige vers la page 404.
Je ne vous remercie pas pour votre aide inexistante.
La solution consiste à filtrer dans le code PHP (avec $_SERVER['REQUEST_URI']) si ca intéresse quelqu'un. Après, en fonction de ca on redirige vers la page 404.
Massamba
creusez davantage, ça parait intéressant
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question