cs_Jackboy
Messages postés757Date d'inscriptionvendredi 7 septembre 2001StatutMembreDernière intervention19 juin 2008
-
19 avril 2006 à 15:54
cs_Jackboy
Messages postés757Date d'inscriptionvendredi 7 septembre 2001StatutMembreDernière intervention19 juin 2008
-
21 avril 2006 à 02:15
Est-il possible de faire un url rewriter en asp et non en asp.net. Si oui devons nous installé un composant serveur ? J'aimerai avoir un peu d'éclairare sur ce sujet... merci !
jesusonline
Messages postés6814Date d'inscriptiondimanche 15 décembre 2002StatutMembreDernière intervention13 octobre 201029 21 avril 2006 à 01:33
Bonsoir,
Alors pour le referencement, c'est justement tout l'avantage de l'url rewriting. En fait peut etre que Nurgle c'est mal expliqué.
Quand tu vas sur la page rewrité, tu as un httpmodule de rewriting qui arrive, il analyse l'url, le rewriter fait donc un rewritepath vers la page non rewrité (et la c'est le drame à cause d'un bug dans certains cas bien compliqué) mais google ne voit rien de tout ca, le rewritepath se fait sur le serveur ! au final, google fait une requete vers une page rewrité, et recoit une réponse, en interne, la page rewrité est la réponse de la page codes.aspx?id=12345. Google ne voit rien du tout puisque pour lui la page non rewrité n'est pas accessible.
Pour la solution que je propose je détail.
Tu peux trés bien faire tourner un meme site à la fois avec du .net et du non .net c'est pas conseillé mais c'est possible (les variables sessions & co sont evidemment pas partagés, les applis sont évidement indépendantes). L'idée est alors de faire une application asp.net qui n'est qu'un module de rewriting (avec le web.config) et au final, tu fais ton rewritepath non pas sur une page .net mais sur une page asp3.
La seule contraite que je vois, c'est que les pages rewrité ne pourront pas être des pages .asp mais .aspx (ou html si tu pouvais configurer IIS...)
C'est pas une solution des plus propres mais ca devrait fonctionner :)
cs_Nurgle
Messages postés1642Date d'inscriptionsamedi 6 novembre 2004StatutMembreDernière intervention28 avril 20114 19 avril 2006 à 20:05
Bonjour Jackboy,
En effet, en ASP tu dois passer par un composant serveur pour faire de l'URL Rewriting.
Le plus souvent c'est par un filtre ISAPI que l'on intègre à IIS.
IsapiRewrite propose un filtre ISAPI pour faire cela, il y a même un article sur asp-php.net sur le sujet ICI
cs_Jackboy
Messages postés757Date d'inscriptionvendredi 7 septembre 2001StatutMembreDernière intervention19 juin 2008 20 avril 2006 à 03:05
Il n'y a pas un moyen par des regexp par exemple ?? Je suis sur un serveur payant, mais je ne crois pas qu'il utilise ce genre de filtre, donc comment par le code ??? J'ai cru voir en dotnet, mais sous asp3 ??
cs_Nurgle
Messages postés1642Date d'inscriptionsamedi 6 novembre 2004StatutMembreDernière intervention28 avril 20114 20 avril 2006 à 10:57
En ASP3 tu es quasiment obligé d'utiliser un filtre ISAPI, qui peut être écrit en DotNet ou en ce que tu veux, et qui lui, va utiliser des RegExp pour traiter les Urls.
Pour le faire totalement en ASP3...ce serait difficile
Il y a bien une solution, elle consiste à utiliser les erreurs 404 :
Dans la console IIS, il suffit de définir comme adresse d'erreur 404 une page "/urlrewriting.asp", puis, dans le mappage des extensions, prendre l'extension .asp, faire "Modifier", puis décocher la case "Vérifier l'existence du fichier".
Ensuite, quand l'utilisateur demande "/Une-Url-Qui-N-Existe-Pas.asp", il sera redirigé vers "/urlrewriting.asp?404;http://www.tonsiteweb.com/Une-Url-Qui-N-Existe-Pas.asp"
et ensuite tu peux, dans urlrewriting.asp, via des RegExp, récupérer l'url demandée, et donc agir en conséquence, par exemple faire un :
Server.Execute("/page.asp?id=64655") ' ce qui correspondra à ton url
Response.End()
En théorie cette solution marche, mais bon, ça reste du bidouillage (je ne garantie rien !)
jesusonline
Messages postés6814Date d'inscriptiondimanche 15 décembre 2002StatutMembreDernière intervention13 octobre 201029 20 avril 2006 à 12:55
Bonjour,
Une autre solution par le code, si ton serveur accepte asp.net tu peux faire juste un handler (.net) pour tes pages asp3, et par conséquent tu n'es pas obligé de migrer pour l'instant le site sur du .net ;)
cs_Jackboy
Messages postés757Date d'inscriptionvendredi 7 septembre 2001StatutMembreDernière intervention19 juin 2008 21 avril 2006 à 01:20
Salut !
Peux tu préciser ton explication jesusonline ! Je ne comprend pas trop ce que tu veux dire et surtout la méthode à utiliser Handler .net via asp3 ?
Pour ce qui est de ta réponse Nurgle, crois tu que google et autre ne verrai pas cette subterfuge et donc ne référenceraient-ils pas bien ce site !?! Pour ce qui est des filtres ISAPI, j'ai fais mes recherches, mais les explication que j'ai trouvé (pour le moment) ne sont pas vraiment nombreuse...
cs_Jackboy
Messages postés757Date d'inscriptionvendredi 7 septembre 2001StatutMembreDernière intervention19 juin 2008 21 avril 2006 à 02:15
Salut !
Merci beaucoup pour tes explications !!! Mais je ne pensais pas que cela étais si complexe à mettre en oeuvre, je vais donc passé à un autre appel héhé... Je vais convertir en dotnet plus tard, je crois que dotnet offre certaine possibilité à ce sujet...