Совпадение базового пути в RewriteCond в .htaccess - PullRequest
0 голосов
/ 11 апреля 2019

Я работаю над проектом PHP с Apache.Я хочу, чтобы все запросы перенаправлялись в мой корень index.php, кроме определенного подкаталога для статических ресурсов.Вот моя структура репозитория:

.
├── .htaccess
├── assets
│   ├── css
│   ├── image
│   └── js
└── index.php

Мой .htaccess файл содержит следующее:

RewriteEngine on

# If the requested path is not in the "assets" dir, route through index
RewriteCond %{REQUEST_URI} !^assets/
RewriteRule . index.php [END]

# If the requested path is in the assets dir, but does not exist, route through index
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule . index.php [END]

Это хорошо работало, когда я помещал свой проект в корневой каталог.Переписывает карту на:

Это прерывается, когда проектустанавливается в подкаталог, например test/, поскольку REQUEST_URI не соответствует ^/assets:

Кажется, что конфигурация .htaccess per-dir учитывает каталог, но я не могу найти, как сопоставить запросы для ^{PROJECT_DIRECTORY}/assets.

Я бы хотелпроект, который нужно установить, просто перетащив хранилище в правильный каталог на сервере.Это возможно?

...