Предотвращение показа основного домена содержимого дополнительных доменов в качестве его подпапки - PullRequest
0 голосов
/ 25 мая 2018

У меня есть основной домен и 5 аддонов в качестве независимых сайтов.Все хорошо, но когда вы нажимаете primary.com/addon1.com, он / она может получить доступ к ненужному контенту через основной веб-сайт.Я хочу предотвратить это.

Я ищу решение через htaccess в корне основного сервера, чтобы не редактировать 5 файлов htaccess аддонов.

Просто я попробовал приведенный ниже код в основномhtaccess, но это не работает.Я пробовал много других альтернатив, но не работает.Зачем?Что не так с этим?

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTP_HOST} (.*)primary\.com$
RewriteRule ^/(addon1|addon2|addon3|addon4|addon5)(.*)$ http://primary.com [R=301,L]
</ifModule>

1 Ответ

0 голосов
/ 25 мая 2018

Документация RewriteRule объясняет, к какому разделу URL-адреса запроса применяется шаблон правил: раздел относительного пути в случае, если вы используете правило в контексте файла динамической конфигурации (которыйты сделаешь).

A Относительный путь означает: без косой черты (/), это будет абсолютный путь.Это имеет абсолютный смысл, когда вы начинаете думать о логике таких динамических файлов конфигурации.

Таким образом, вы можете удалить начальную косую черту из шаблона, но я считаю, что лучше сделать его необязательным.Таким образом, ваше правило будет работать независимо от того, где оно применяется, в файле динамической конфигурации или в реальной конфигурации хоста:

RewriteEngine On
RewriteCond %{HTTP_HOST} (^|\.)primary\.com$
RewriteRule ^/?(addon1\.com|addon2\.com)(/|$) http://primary.com/ [R=301]

И общее замечание: вы всегда должны предпочитать размещать такие правилав конфигурации хоста http-серверов вместо использования динамических файлов конфигурации («.htaccess»).Эти динамические конфигурационные файлы добавляют сложность, часто являются причиной неожиданного поведения, трудно поддаются отладке, они действительно замедляют работу http-сервера, часто даром, и могут открыть пути к кошмарам безопасности.Они предназначены только для ситуаций, когда у вас нет доступа к реальной конфигурации хоста http-серверов (читай: действительно дешевые поставщики услуг).

...