Я пытался найти повсюду, но не нашел подходящего ответа. Я почти уверен, что это дубликат, но, пожалуйста, дайте мне правильный ответ.
Так что это мой случай. Проект находится по адресу 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]
By при этом мне удалось выполнить перенаправление на 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 к виртуальному хосту dashboard.example.com и правильно переписать URL-адреса, если заголовок хоста - 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]
Что-то вроде этого. Я не тестировал его, но он должен работать.