Я пытался найти все и не нашел правильного ответа. Я почти уверен, что это должен быть дубликат, но, пожалуйста, дайте мне правильный ответ.
Так что это мой случай. Проект находится по адресу dashboard.example.com/link1, и есть n других ссылок, таких как dashboard.example.com/link1/sub1, dashboard.example.com/link1/sub1/sub2 и так далее ... Но , Я хочу, чтобы он отображался в URL-адресе как link1.example.com/sub1, link1.example.com/sub1/sub2 и так далее ...
Я пробовал что-то подобное в .htaccess
RewriteCond %{HTTP_HOST} ^dashboard\.example\.com$
RewriteRule ^([^/.]+)(/.*)?$ http://$1.example.com$2 [L,R=301]
Сделав это, я успешно перенаправил на link1.example.com
Но да, это не тот проект, который мне нужен (dashboard.example.com/link1
)
Я также ранее пытался использовать прокси следующим образом, но безуспешно.
<VirtualHost *:80>
ServerName link1.example.com
ServerAdmin webmaster@localhost
ProxyPreserveHost On
ProxyPass / http://localhost/dashboard/
ProxyPassReverse / http://localhost/dashboard/
</VirtualHost>
Я знаю, что я не просто там, Спасибо за попытку мне помочь.
Лучше всего добавить link1.example.com в качестве ServerAlias к VHost dashboard.example.com и правильно переписать URL-адреса, если заголовок Host - link1.
RewriteCond %{HTTP_HOST} ^dashboard\.example\.com$
RewriteRule ^([^/.]+)(/.*)?$ http://$1.example.com$2 [L,R=301]
RewriteCond %{HTTP_HOST} ^link1\.example\.com$
RewriteRule ^(.*)$ /link1/$1 [L]
Что-то вроде этого. Я не тестировал, но это должен работай.