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

Добавить поддельный подкаталог в uri

При установке drupal 8 с помощью composer установка по умолчанию перемещается в подкаталог /web.

При посещении рута по адресу http://example.com apache 2.3 обслуживает 403, но при посещении http://example.com/web и соответствующие подстраницы все работает.

Есть много руководств о том, как сопоставить это с root, это более или менее вопрос установки правильного DocumentRoot. Я использую этот виртуальный хост:

<VirtualHost *:80>

  ServerName localhost
  DocumentRoot /var/www/html/web

  <Directory /var/www/html/web>
    RewriteEngine on
    RewriteBase /

    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule ^(.*)$ index.php?q=$1 [L,QSA]

    Options FollowSymLinks
    AllowOverride All
    Require all granted
  </Directory>

</VirtualHost>

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

Например путь http://example.com/fakesubdir/admin/config должен работать как положено и http://example.com/admin/config вместе с http://example.com/ следует бросить 403-е.

Я пытался изменить DocumentRoot, добавить псевдонимы и изменить различные правила перезаписи, но все они, похоже, пытаются указать, где файлы размещаются на хосте. Я не могу понять, как просто внести очевидное изменение в uri.

Я нашел несколько руководств, которые требуют изменения $base_url в settings.php, но, похоже, этот метод устарел в drupal 8.

Я также посмотрел на этот вопрос, но ответы там предлагают переместить файлы в другое место, которое я не хочу сделать, так как хочу оставить значение по умолчанию /web каталог, созданный композитором, чтобы избежать множества других проблем.

Как я могу добавить этот поддельный подкаталог?