Par exemple, mon domaine est example.com
et lorsque quelqu'un accède à example.com/sample/page.htm
, je souhaite le rediriger vers test.com/sample/page.htm
.
Je sais que cela peut probablement être facilement fait en utilisant un fichier .htaccess
ou une page 404. Cependant, je recherche une solution qui ne nécessite pas que mon fournisseur DNS héberge des fichiers pour moi.
Je souhaite le faire avec les paramètres DNS uniquement, par exemple:
Y a-t-il un moyen de faire ça?
Vous pouvez résoudre exemple.com/test.com sur le même serveur Web (IP) via DNS (CNAME si vous le souhaitez) et cela fonctionnerait.
Si vous cherchez à le faire par chemin, non. Le DNS ignore des choses comme les URL. DNS est simplement en train de traduire la partie hôte de l'URL (example.com) en adresse IP. Le serveur Web est chargé de déterminer quelle (ou où) l'URL est censée résoudre. Je pense que vous devez le faire au niveau du serveur Web (http).
Comme il a été noté, cela ne peut pas être fait entièrement avec DNS. Cependant, si vous avez le DNS par exemple.com, vous vous référez au même serveur que test.com, il est très simple de configurer Apache pour accomplir ce que vous souhaitez faire. Ajoutez simplement ce qui suit:
<VirtualHost *:80>
ServerName example.com
Redirect permanent / http://test.com/
</VirtualHost>
Cela réécrira tout lien entrant vers example.com en lien pour test.com, en préservant le chemin.
De plus, votre fournisseur DNS n'a pas besoin d'héberger des fichiers, car cela ne dépend que du serveur Web que vous utilisez déjà pour test.com.
Vous ne pouvez pas faire cela via le seul DNS. Les redirections 301 ne sont pas une chose de DNS. Ils sont une chose serveur Web.
Ce que vous pouvez faire est de pointer vos entrées DNS example.com sur le même serveur que test.com et de configurer exemple.com en tant que domaine alias pour test.com.
Voici la règle exacte .htaccess
que j'utilise pour rediriger toutes les demandes de www.mondomaine.com vers mydomain.com (étant donné que l'URL canonique est la plus courte):
RewriteCond %{HTTP_Host} ^www\.mydomain\.com$ [NC]
RewriteRule ^(.*)$ http://mydomain.com/$1 [R=301,L]
C'est assez facile à modifier pour modifier la redirection de foo.com
vers foobar.com
, tout en préservant la requête, le client reçoit simplement une redirection 301 vers le domaine approprié.
Cependant, vous ne pouvez pas faire cela "juste" avec DNS, comme d'autres l'ont déjà dit, les serveurs DNS résolvent simplement les noms de domaine complets en adresses IP.