У меня есть сервер с ISPConfig + Nginx + PHP, который устанавливает webroot по умолчанию на /{userdir}/web
, У меня есть доступ только к этой папке, и я не могу изменить документацию в nginx.
Большинство фреймворков используют подпапку в качестве документа, например, если я устанавливаю CakePHP, документирование должно быть установлено на /{userdir}/web/webroot
Но, поскольку я не могу изменить документацию, мне нужно сделать некоторые правила переписывания в nginx, которые в основном изменят все, что собирается /
идти в /webroot/
Я пробовал стандартные правила перезаписи с CakePHP, и это прекрасно работает, потому что у них есть index.php
файл в корневой директории проекта, так что все в порядке. Проблема, например, при попытке доступа /favicon.png
из-за расширения его нужно обслуживать как файл, но для этого нет правил перезаписи. Есть ли какое-то волшебное правило перезаписи, которое будет направлять все в подпапку, как если бы это был корень документа?
Вот правила перезаписи по умолчанию, которые рекомендует CakePHP:
https://book.cakephp.org/3.0/en/installation.html#nginx
Задача ещё не решена.
Других решений пока нет …