2011-10-18 4 views
3

J'ai un site Web dont j'ai deux versions: une en espagnol et une en anglais. Ils sont situés dans différents serveurs et différents domaines. Donc, ils se comportent comme deux sites différents.Nom de page ASP .NET "alias"

J'ai seulement un projet ASP .NET, et selon le domaine, je montre tous les textes en espagnol ou en anglais. Cela fonctionne bien.

Je l'ai d'abord développé en espagnol, donc mes noms de pages sont écrits en espagnol, comme "Buscar.aspx" ("Buscar" signifie "Recherche").

Je voudrais traduire aussi le nom de la page, de sorte que dans la barre d'adresse du navigateur, il apparaîtrait les noms anglais. Par exemple, pour ma page "Buscar.aspx" je voudrais apparaître "Search.aspx" dans la barre d'adresse. Donc, ma question est: est-il possible de déclarer une sorte d '"alias" (ou un autre mécanisme), de sorte que je puisse traiter les requêtes "Buscar.aspx" et "Search.aspx" via un seul ASP Page .NET, mais apparaît toujours dans la barre d'adresse sous la forme de deux adresses différentes?

Répondre

3

URL Rewriting

Vous pouvez réécrire Search.aspx à Buscar.aspx

<rewrite> 
    <rules> 
    <rule name="Search"> 
     <match url="^Search.aspx" /> 
     <action type="Rewrite" url="Buscar.aspx" /> 
    </rule> 
    </rules> 
</rewrite> 

Ces règles pourraient alors être mis dans votre fichier web.config Anglais

+1

Merci beaucoup. C'était très utile. Pour le rendre parfait, je ferai des recherches sur la façon de rendre cette section conditionnelle au domaine, de sorte que je n'ai pas besoin de maintenir deux fichiers web.config différents. Je voudrais éviter de copier un fichier sur le mauvais domaine par accident. – ACB

3

Jetez un oeil à routage. Vous pouvez trouver de la documentation ici: ASP.NET Routing

Le routage signifie que vous pouvez spécifier un chemin qui correspond à un certain ASPX. Si vous changez la configuration de routage en fonction de votre langue, vous avez ce dont vous avez besoin :)

+0

Merci, c'était vraiment utile. Outre ma question, dans ce document, j'ai trouvé quelques idées pour améliorer certains autres aspects de mon site. – ACB