Как скрыть фактический путь к URL-адрес с использованием .htaccess? [закрыто]

Мой домен mainsite.com действительно указан на / public_html / .

Но я хочу указать на дочерний сайт, например / public_html / subsite .

Итак, я попробовал следующее:

RewriteCond %{HTTP_HOST} ^(www\.)?mainsite\.com$ [NC]
RewriteRule !^(subsite) /subsite%{REQUEST_URI} [L,NC]

Он работает нормально.

На втором месте у меня много подсайтов / подпапок в / public_html / subsite , например / public_html / subsite / (site1 или другие ...) .

Но когда я набираю mainsite.com/ (site1 или другие ...) , он показывает мне этот URL mainsite.com/subsite/ (site1 или другие ...) чего я не хочу.

Я хочу скрыть только / subsite / из URL при просмотре пользователем.

-1
задан 20 September 2016 в 22:41
1 ответ

Ознакомьтесь с информацией об установке псевдонима:

https://httpd.apache.org/docs/current/mod/mod_alias.html

Директива Alias позволяет хранить документы в локальных файловая система, отличная от файловой системы DocumentRoot. URL-адреса с (%-декодированные) путь, начинающийся с URL-пути, будет привязан к локальным файлам, начинающимся с с каталожным путём. URL-путь чувствителен к регистру, даже на нечувствительные к регистру файловые системы.

Псевдоним "/изображение" "/ftp/pub/image". 

Запрос на http://example.com/image/foo.gif приведет к тому, что сервер вернет file /ftp/pub/image/foo.gif. Поддерживаются только полные сегменты пути, чтобы вышеупомянутый псевдоним не совпадал с запросом о том. http://example.com/imagefoo.gif. Для более сложного сопоставления используя регулярные выражения, см. директиву AliasMatch.

2
ответ дан 5 December 2019 в 19:23

Теги

Похожие вопросы