Например, мой домен есть, example.com
и когда кто-то переходит на него example.com/sample/page.htm
, я хочу, чтобы он перенаправлял на test.com/sample/page.htm
.
Я знаю, что это, вероятно, легко сделать с помощью .htaccess
файла или страницы 404. Однако я ищу решение, которое не требует, чтобы мой DNS-провайдер размещал для меня какие-либо файлы.
Я хочу сделать это только с настройками DNS, например:
- Записи CNAME
- Записи
- 301 пересылка
- (любые другие настройки DNS мне не хватает)
Есть какой-либо способ сделать это?
redirects
dns
301-redirect
domain-forwarding
Senseful
источник
источник
Ответы:
Вы можете настроить example.com/test.com на тот же веб-сервер (IP) через dns (CNAME, если хотите), и это сработает.
Если вы хотите сделать это для каждого отдельного пути, то нет. DNS не знает таких вещей, как URL. DNS просто переводит часть URL-адреса узла (example.com) в IP-адрес. Веб-сервер отвечает за выяснение того, что (или где) должен разрешить URL. Я считаю, что вам нужно сделать это на уровне веб-сервера (http).
источник
Как уже было отмечено, это не может быть сделано полностью с DNS. Однако, если у вас DNS для example.com ссылается на тот же сервер, что и test.com, очень легко настроить Apache для выполнения того, что вы хотите сделать. Просто добавьте следующее:
Это перезапишет любую входящую ссылку на example.com на ссылку для test.com, сохранив путь.
Кроме того, вашему провайдеру DNS не нужно размещать какие-либо файлы для вас, поскольку это зависит только от веб-сервера, который вы уже используете для test.com.
источник
Вы не можете сделать это только через DNS. 301 переадресация не вещь DNS. Они вещь веб-сервера.
Вы можете указать DNS-записи example.com на тот же сервер, что и test.com, и настроить example.com в качестве псевдонима домена test.com.
источник
Вот точное
.htaccess
правило, которое я использую, чтобы перенаправить все запросы с www.mydomain.com на mydomain.com (поскольку короче мой канонический URL):Это достаточно легко изменить, чтобы перенаправить из
foo.com
вfoobar.com
, при сохранении запроса, клиент просто получает 301 перенаправление в соответствующий домен.Однако вы не можете сделать это «просто» с DNS, как уже говорили другие, DNS-серверы просто разрешают полное доменное имя в IP-адреса.
источник
RewriteRule ^(.*)$ http://mydomain.com$1 [R=301,L]
), иначе она добавит две косые черты к перенаправленному URL. Кто-нибудь еще испытал это?