2008-10-29 7 views
2

signet J'ai récemment converti un site de asp à CF. Malheureusement, beaucoup de vieux utilisateurs ont mis en signet la "page d'accueil". www.example.com/homepage.asp~~V~~3rdPage redirect

Y at-il une sorte de fourre-tout comme je pouvais rediriger tout le trafic de cette page à l'index.cfm actuelle?

Je normalement simplement supprimer ces fichiers, mais le propriétaire (s) voulu garder autour pour leurs propres raisons de comparaison.

Des idées?

Merci

+0

Si seulement il y avait un nom de domaine qui était spécifiquement réservé aux exemples ... oh, attendez ... –

Répondre

6

Mettre cela dans l'ancien homepage.asp

<%@ Language=VBScript %> 
<% 
Response.Status="301 Moved Permanently" 
Response.AddHeader "Location", "/index.cfm" 
%> 
0

Le meilleur pari est de faire soit une meta refresh dans la page homepage.asp réelle, il est rapide et sale, mais fonctionne.

Une meilleure solution serait que la page .asp fasse une redirection 301 vers la nouvelle page d'accueil, de cette façon lorsque les moteurs de recherche accèdent à la page et qu'ils savent qu'elle a été déplacée.

+0

J'aime votre deuxième idée, mais je ne suis pas familier. Pouvez-vous me montrer un exemple? Merci –

+0

Nevermind, je l'ai googlé, assez simple. Merci encore! –

0

Ce que je fais sur des machines Linux quand je lance dans quelque chose comme ceci est de créer un lien symbolique (ln -s /path/to/source /path/to/target).

Je ne sais pas ce que l'équivalent de Windows serait, donc aller avec la réponse @Patrick's est probablement le meilleur.

EDIT - La façon NTFS de faire un lien symbolique:
http://en.wikipedia.org/wiki/NTFS_symbolic_link
voir aussi http://en.wikipedia.org/wiki/Symbolic_link

+0

Je ne sais pas comment c'est sous Linux, mais dans Windows je trouve que les liens symboliques comme celui-ci sont très dangereux car (disons) les nouveaux administrateurs ne réalisent pas que le dossier et les scripts qu'ils sont sur le point d'effacer sont en fait seulement l'instance et non le duplicata qu'ils s'attendent naturellement à être ... –

2

Si vous ne voulez pas exécuter un fichier asp onéreux du tout sur le nouveau site, vous pouvez faire Personnalisé 404 sur le serveur Web. Si vous pointez la page 404 à un fichier .cfm, vous pouvez extraire toutes les différentes caractéristiques de la demande en incluant:

<!--- parse out the text in the URL parameters into an array ---> 
<cfset variables.requestparams = listtoarray(cgi.query_string,'/?&')> 

<!--- get rid of the first 2 items in the array since they dont represent request info ---> 
<cfset foo = arraydeleteat(variables.requestparams,1)> 
<cfset foo = arraydeleteat(variables.requestparams,1)> 

Vous serez à gauche avec un tableau représentant les paramètres qui ont été transmis dans la demande initiale . Vous pouvez effectuer un suivi en faisant l'analyse nécessaire sur les composants de l'URL pour la mapper sur les pages analogues de votre site CF.

2

Je suis surpris que personne n'a mentionné URL Rewriting. Vous pouvez utiliser mod_rewrite sur * nix/apache, ou ISAPI Rewrite ou Ionics ISAPI Rewrite sous Windows/IIS. Je préfère Ionics si je suis sur IIS.