У меня есть несколько сотен доменов, распределенных по разным регистраторам.
Для простоты управления я настроил серверы имен для всех из них на один сервис, как выше. Com (они позволяют вам перенаправлять куда угодно)
Я также настроил сайт WordPress на виртуальном хостинге (Linux), где каждый домен имеет некоторый контент, следуя этой структуре URL:
http://example.com/domain1
http://example.com/domain2
http://example.com/domain300
Теперь я хотел бы добиться этого, когда кто-то печатает в браузере или переходит по ссылке:
http:// domain1.com -> should be redirected to http://example.com/domain1
http:// domain2.com -> should be redirected to http://example.com/domain2
http:// domain300.com -> should be redirected to http://example.com/domain300
Есть ли способ избежать необходимости редактировать сотни записей доменов / DNS по отдельности?
Было бы неплохо, если бы маскировка была возможна:
Если кто-то печатает http://domain1.com
он должен быть перенаправлен на http:// example.com/domain1
но URL-адрес панели браузера по-прежнему показывает http://domain1.com
Я хорошо проектирую сайты, но у меня очень и очень плохая способность к кодированию.
Какие-нибудь шаблоны или готовые решения для этого?
Любая помощь будет принята с благодарностью.
РЕДАКТИРОВАТЬ:
Как насчет немного другого маршрута:
если структура WordPress URL будет настроен следующим образом:
site.com/domain1.de
site.com/domain2.us
..
site.com/domain300.com
Тогда проще ли просто указать каждый домен на site.com, и есть какое-то правило для направления трафика на основе реферера в соответствующую структуру подкаталога / URL?
domain1.de -> gets redirected to site.com/domain1.de
domain2.us -> gets redirected to site.com/domain2.us
..
domain300.com -> gets redirected to site.com/domain300.com
ОБНОВИТЬ:
Теперь я добавил следующий код в .htaccess в корневом каталоге WordPress:
# BEGIN Stackexchange hack
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTP_HOST} ^(domain[\d]+\..*)$
RewriteRule ^(.*)$ http://example.com/%1 [L,R,QSA]
</IfModule>
# END Stackexchange hack
Я не могу заставить его работать .. перенаправленные домены все пойдут на index = example.com
вместо этого он перенаправляется на example.com/domain.de
Когда вы настраиваете свой vhost в (предполагается) Apache, добавьте следующее:
ServerName example.com
ServerAlias domain1.com domain2.com .... domain300.com
Настройте каждый из ваших доменов, чтобы указать example.com
Ваш .htaccess
может быть следующим:
RewriteCond %{HTTP_HOST} ^(domain[\d]+\..*)$
RewriteRule ^(.*)$ http://example.com/%1 [L,R,QSA]
Перезапишем domainX.com на example.com/domainX
Жесткие перенаправления должны быть сделаны из-за изменения в хосте.
Вы мог пытаться обмануть людей, делая такие вещи, как history.replaceState("domainX.com")
в JavaScript, чтобы изменить панель браузера, но любой, кто открывает консоль, может видеть через ход. Это потому, что если бы было возможно обслуживать контент из malicioussite.com
в то время как люди думают, что это исходит от example.com
это было бы очень, очень непослушно.
Если кто-то введет http: // domain1 .com
он должен быть перенаправлен на http: // site .com / domain1
но URL-адрес панели браузера по-прежнему показывает http: // domain1 .com
Это невозможно из-за соображений безопасности, вы можете только «подражать» этому, установив в domain1.com iframe:
<iframe src="http://example.com/domain1" width="100%" height="100%"></iframe>
http: // domain1 .com -> должен быть перенаправлен на http: // site .com / domain1
http: // domain2 .com -> должен быть перенаправлен на http: // site .com / domain2
..
http: // domain300 .com -> должен быть перенаправлен на http: // site .com / domain300
Единственный способ, которым я знаю, — это настроить в каждом домене перенаправление 301 на http: // site .com / domainX