Я ищу способ перенаправления домена на его поддомен через записи DNS a / cname.
Возможно ли, чтобы эти примеры были полностью выполнены в DNS, я знаю, что это можно легко сделать с помощью .htaccess и PHP.
website.com => blog.website.com website.com/hello => blog.website.com/hello www.website.com => blog.website.com www.website.com/hello => blog.website.com/hello
Есть идеи?
DNS предназначен только для связывания доменных имен с IP-адресом. Вы не можете перенаправлять его.
Вам придется обрабатывать перенаправление на стороне веб-сервера. Вам просто нужно перетащить HTTP 301 Permanently moved
чтобы ваши посетители узнали новый адрес, будь то файл .htaccess
если вы используете apache, или простой PHP-скрипт с функцией header()
.
Вы можете использовать CNAME в DNS, чтобы указать другое имя на тот же адрес, что и другое имя, что упрощает изменение IP-адреса обоих. IE, если ваша почта www и ftp все находятся на одном и том же IP-адресе, вы можете настроить его, а остальные два – первыми, поэтому, если IP-изменения нужно изменить, нужно изменить только один.
Однако это не перенаправление. Если вы используете один или оба на своих веб-страницах, имя домена не будет изменяться при навигации. Это должно быть достигнуто с помощью других средств. В основном вам нужно сделать так, как указано выше, с 301 постоянно перемещенным или 302 временно перемещенным. Это может быть выполнено многими способами либо с веб-сервером, либо с кодом.
Если вы используете Apache, посмотрите на mod_rewrite, который обычно включен по умолчанию. Это может либо войти в вашу конфигурацию, либо ваш .htaccess, как вы упомянули. Если вы используете другой веб-сервер, обратитесь к его документации.
По коду вы можете испускать заголовок Location для выполнения перенаправления. На большинстве языков есть библиотеки, которые помогут вам в этом процессе.
DNS (ну, как минимум, записи A / CNAME) сообщает системе «соответствующий IP-адрес для этой серии символов – 123.456.789.000». Остальное зависит от сервера на этом IP-адресе.