Имя узла удаленного хоста не имеет никакого необходимого отношения ни к одному из его сетевых имен. Необходимо будет войти в систему и использовать hostname
команда.
При поиске Полностью определенного доменного имени (FQDN) сетевого адреса можно использовать инструменты запроса DNS как dig
или nslookup
, как описано @firm и @Richard Holloway.
Вот протестированное решение:
RewriteEngine On
RewriteBase /
RewriteCond %{HTTP_HOST} ^www\.domain\.tld [NC,OR]
RewriteCond %{HTTP_HOST} ^domain\.tld [NC]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
Rewriterule ^(.*)$ http://subdomain.newdomain.tld/$1 [L,R=301]
Строки 3 и 4 говорят апачу применять правило, когда запрос идет с www или нет, без учета к прописным или строчным буквам. !-f
и !-d
в концах строк 5 и 6 соответственно говорят апачу стараться не применять перенаправление к существующим файлам и каталогам.
Можно сделать этот Apache использования mod_rewrite
, который позволяет Вам перенаправлять запросы с помощью RewriteRule
директива. Можно сделать это условное выражение на файле существующим использованием RewriteCond
директива. mod_rewrite документация является, вероятно, хорошим местом для запуска.