Итак, я видел этот ответ, но он не казался связанные с этим вопросом.
Моя ситуация такова: на моем веб-сайте есть каталог с именем mywebsite.com/indev/dist
(поскольку dist
— это папка сборки). Я хочу, чтобы все файлы в mywebsite.com/indev/dist
отображались и работали так, как будто папки dist
вообще не существовало.
Например, если я запрошу mywebsite.com/indev/index45.php
, файл будет расположен по адресу /indev/dist/index45.php
.
Вот что я пробовал до сих пор:
location ~ .*\/indev\/dist.* {
try_files $uri $uri/ =404;
}
location ~ .*\/indev.* {
rewrite ^\/indev\/(.*) /indev/dist/$1 break;
}
Это прекрасно работает с одним существенным недостатком: файлы php не запускаются, они идут по исходному адресу, который в ответ дает 404. Есть ли способ сделать то, что я использую, используя конфигурацию NGINX без каких-либо серьезных недостатков (или необходимости создавать ненужные правила (например, просто для обработки файлов php)?)
/indev
? Итак, то, что вы пытаетесь сделать, это псевдоним/indev/
для/indev/dist/
. Для работы PHP вам нужно будет использовать вложенный файлlocation
. См. этот ответ. - person Richard Smith   schedule 22.04.2018