Coder un .htaccess

Limerick Messages postés 25 Date d'inscription dimanche 23 janvier 2005 Statut Membre Dernière intervention 19 décembre 2012 - 23 janv. 2005 à 22:13
cs_Anthomicro Messages postés 9433 Date d'inscription mardi 9 octobre 2001 Statut Membre Dernière intervention 13 avril 2007 - 26 janv. 2005 à 13:55
Bonjour à tous

Je m'adresse à vous car je cherche quelqu'un qui s'y connaisse en écriture pour un fichier .htaccess

J'ai un site en PHP que j'ai fait avec DAlbum et auquel on accède par une page de login. L'adresse du site est du type www.monsite.com.


J'ai un forum PunBB, également en PHP, auquel on peut accéder par un lien placé sur le site. L'adresse du forum est du type www.monsite.com/forum/index.php

Sur mon forum, j'ai une page de redirection automatique qui contient une ligne que j'appelle - abusivement peut-être - "Meta Refresh" de ce type :

<meta http-equiv= "Content-Type" content="text/html; charset=iso-8859-1" />
<meta http-equiv="refresh" content="2;URL=http://www.monsite.com/forum/index.php" />


D'autre part, je souhaite ne pouvoir laisser accéder au forum que ceux qui proviennent de monsite.com

J'ai donc écrit le .htaccess suivant :

SetEnvIfNoCase Referer "^http://www.monsite.com/" local_ref=1 
Order deny,allow 
deny from all 
allow from env=local_ref


Cela fonctionne bien , hormis que le "Meta Refresh" dont je parle plus haut n'est pas reconnu par le .htaccess, et donc, quand apparaît la page de redirection automatique, j'obtiens une Erreur 403, deux secondes plus tard (cf. le "Meta Refresh" ci-dessus).

Seulement, si je clique sur le lien pour ne pas attendre, tout se passe normalement.

J'en déduis donc que c'est bien la fonction Redirection Automatique du "Meta Refresh" qui n'est pas reconnue par le code écrit dans le .htaccess.

Ma question est donc la suivante : comment faire pour que le "Meta Refresh" soit lui aussi reconnu comme provenant d'une page de monsite.com ?

On pourrait penser à quelque chose du style :

SetEnvIfNoCase Referer "^http://www.monsite.com/" local_ref =1 
SetEnvIfNoCase Referer "Meta Refresh" local_ref=1 
Order deny,allow 
deny from all 
allow from env=local_ref


Bien sûr, ce n'est pas ça, mais c'est juste pour vous donner une idée de ce que je recherche.

Je ne connais pas la syntaxe de programmation en générale, et celle de .htaccess en particulier...

Alors si quelqu'un pouvait m'aider :)

Merci à vous

5 réponses

cs_Anthomicro Messages postés 9433 Date d'inscription mardi 9 octobre 2001 Statut Membre Dernière intervention 13 avril 2007 8
24 janv. 2005 à 20:43
Salut,



heu désolé mais j'ai pas bien compris, peux-tu nous donner la page de
départ (celle où arrive le visiteur) et celle où il doit arriver via
une redirection 301 ?



merci

Vulgarisation informatique : Entraide, dépannage et vulgarisation informatique

Forum d'entraide informatique (14 catégories)
0
Limerick Messages postés 25 Date d'inscription dimanche 23 janvier 2005 Statut Membre Dernière intervention 19 décembre 2012
25 janv. 2005 à 21:59
Ben en fait, il ne s'agit pas du tout de refaire une redirection 301, mais de permettre à un .htaccess de reconnaître un "Meta Refresh" afin qu'il autorise une redirection automatique.
Pour info la redirection manuelle et quant à elle parfaitement reconnue par ce même .htaccess et fonctionne très bien.

Désolé pour la présentation de mon post ci-dessus mais quand j'ai vu que sa présentation non conforme à ce que je souhaitais, je n'ai pas trouvé la possibilté de l'éditer
0
cs_Anthomicro Messages postés 9433 Date d'inscription mardi 9 octobre 2001 Statut Membre Dernière intervention 13 avril 2007 8
25 janv. 2005 à 22:26
Heu la redirection via les balises <meta> n'a rien à voir avec htaccess...

Vulgarisation informatique : Entraide, dépannage et vulgarisation informatique

Forum d'entraide informatique (14 catégories)
0
Limerick Messages postés 25 Date d'inscription dimanche 23 janvier 2005 Statut Membre Dernière intervention 19 décembre 2012
25 janv. 2005 à 23:03
Ben justement, je voudrais intégrer une redirection qui est faîte par une balise <meta> au sein d'un .htaccess, de la même manière que je suis parvenu (enfin... j'ai trouvé sur le Net) à le faire pour tous les autres liens comme indiqué ci-dessous :

SetEnvIfNoCase Referer "^http://www.monsite.com/" local_ref=1 
Order deny,allow 
deny from all 
allow from env=local_ref
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_Anthomicro Messages postés 9433 Date d'inscription mardi 9 octobre 2001 Statut Membre Dernière intervention 13 avril 2007 8
26 janv. 2005 à 13:55
Un htaccess ne modifie en rien le code html sortant, il agit au niveau des headers.

Vulgarisation informatique : Entraide, dépannage et vulgarisation informatique

Forum d'entraide informatique (14 catégories)
0
Rejoignez-nous