У нас есть онлайн-сервис с 3 клиентами: Автозапчасти, CarExamples и Cars & More. Это структура URL:
- example.com / AutoParts
- example.com / carexamples
- example.com / carsandmore
Один из клиентов (CarExamples) хочет использовать свой собственный домен (carexamples.com), но ему необходимо загрузить содержимое example.com/carexamples, конечно, всегда используя оригинальный домен.
Это означает, что:
- carexamples.com должен загрузить example.com/carexamples
- carexamples.com / about должен загрузить example.com/carexamples/about
- carexamples.com / категории / грузовики? P = 1 должен загрузить example.com/carexamples/categories/trucks?p=1
Мы используем среду LAMP (PHP v5.6). Домен example.com находится на /www/example/html
на нашем сервере.
Текущее состояние этой проблемы:
Создайте запись A в консоли диспетчера DNS домена, которая указывает на тот же сервер, где размещается example.com.
Добавление виртуального хоста для настраиваемого домена
<VirtualHost servername:80>
ServerName carexamples.com
ServerAlias www.carexamples.com
DocumentRoot /www/example/html
</VirtualHost>
Но при открытии carexamples.com это просто загрузит тот же контент example.com
Стоит отметить, что /www/example/html/carexamples
- это не каталог, это перезапись с /www/example/html/store.php?store=carexamples
Shopify делает нечто подобное: https://help.shopify.com/en/manual/domains/add-a-domain/using-existing-domains/connecting-domains#set-up-your-existing-domain-to-connect-to-shopify возможно, это может помочь в качестве ссылки на эту проблему.
Это существующие правила перезаписи в файле .htaccess:
# stores
RewriteRule ^([0-9a-zA-Z-]{2,50})$ /store.php?store=$1 [QSA,L]
# stores > categories
RewriteRule ^([0-9a-zA-Z-]{2,50})/([0-9a-zA-Z-]{1,50})$ /store.cat.php?store=$1&cat=$2 [QSA,L]
# stores > categories > items
RewriteRule ^([0-9a-zA-Z-]{2,50})/([0-9a-zA-Z-]{1,50})/([0-9]+)/([0-9a-zA-Z-]{1,100})$ /store.cat.php?store=$1&cat=$2&id_item=$3&item=$4 [QSA,L]