2009-04-22 6 views
0

J'utilise le filtre de réécriture ionique isapi pour rediriger tous les fichiers .asp vers le fichier validate.asp pour effectuer la validation de la session. Mais je me retrouve dans une boucle. Toute aide serait très appréciée.Le filtre de réécriture Isapi se termine par une boucle

mon fichier .ini

ReDirectRule ^/XXXX/(.*).asp?(.*) /YYYY/validate.asp$2&url1=$1&url2=$2 [R] 

Validate.asp

<% 
'validation step goes here.. 

Response.Redirect("../XXXX"&Request.QueryString("url1")&".asp"&Request.QueryString("url2")) 
%> 

Répondre

1

ini.file

ReWriteRule ^/XXXX/(.+).asp(?:\?(.*))?$ /YYYY/validate.asp?$2&url1=$1&url2=$2 [L] 

Validate.asp

'validation step goes here.. 

Server.Transfer("../XXXX"&Request.QueryString("url1") & ".asp") 

La méthode Server.Transfer envoie (transferts) toutes les informations de l'état (toutes les variables application/session et tous les éléments dans les collections de demande) créées dans un fichier ASP à un second fichier ASP.

+0

Merci pour votre réponse, mais le problème avec l'ajout de chaîne de requête avec redirigé = 1, si le livre d'utilisateur marque l'URL, disons /xxxx/index.asp?redirected=1 & ... Il va toujours contourner le filtre :) – fitnet

+0

Ahh ouais ça redirige. Vous pouvez également supprimer les redirections et inclure le fichier approprié dans /YYYY/validate.asp à l'aide de Server.Execute ("../ XXXX /" & Request.QueryString ("url1") & ".asp? Redirected = 1 &" & Request. QueryString ("url2") ") De cette façon, l'utilisateur ne rencontre pas 2 redirections et l'URL reste inchangée –

+0

Merci encore Si vous voyez mon commentaire, après la déconnexion de l'utilisateur, s'il essaie d'accéder à la même page par en utilisant l'URL bookmarked, le filtre isapi l'ignorera, puisqu'il aura redirigé = 1. pouvons-nous faire le drapeau de redirection dans les entêtes http ou si quelqu'un a une réponse différente – fitnet

Questions connexes