Назад | Перейти на главную страницу

dashboard.example.com/link1/* будет всегда использоваться как link1.example.com/*

Я пытался найти все и не нашел правильного ответа. Я почти уверен, что это должен быть дубликат, но, пожалуйста, дайте мне правильный ответ.

Так что это мой случай. Проект находится по адресу 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]

Что-то вроде этого. Я не тестировал, но это должен работай.