У меня есть REST-фреймворк, который при подключении к любому каталогу должен просто работать (TM), и, кажется, он работает нормально, когда у меня есть проекты в подкаталогах, но не в том случае, если он находится в корневом каталоге. Итак, приведено несколько примеров каталогов;
/
/project1
/bingo/project2
/hoopla/doopla/minor/project3
Все это прекрасно работает, за исключением того, что я получаю "приколы" *, когда проект запускается в корневом каталоге (я полагаю, это сложно объяснить, но переписывание второго уровня не работает должным образом). Вот моя попытка создания общего файла .htaccess:
RewriteEngine On
RewriteRule ^static/ - [L]
RewriteCond %{REQUEST_URI} ^$
RewriteRule .* ./ [R,L]
RewriteRule ^index.php - [L]
RewriteRule (.*) index.php?q=$1 [QSA,PT]
(И да, у всех проектов есть подкаталог ./static, который игнорируется при переписывании) Я пытаюсь достичь набора правил перезаписи, которые работают в большинстве случаев (что опять-таки включает проект в каталог, который обслуживает веб-сервер). Я давно не переписываю правила, а если бы я дал хороший совет, я хотел бы получить любые полезные советы и рекомендации (и да, я прошел слишком много вводных статей. Мне нужен серьезный сок).
Больше информации о забавах; Мой веб-сервер имеет docroot в одном месте (в / usr / share / apache2 / default-site /), но набор правил, который говорит, что / projects извлекается из другого места, которое не является подкаталогом docroot (/ home / user / Проекты /). Когда я иду туда, я получаю список подкаталогов / projects, и если одна из этих подкаталогов вызывается (restmapp) с предложенными правилами перезаписи, я получаю;
Запрошенный URL /home/user/Projects/restmapp/index.php не найден на этом сервере.