Я недавно перенес сайт в гибкую среду из bluehost. Благодаря этой миграции я знаю, что мне нужно настроить файл nginx-app.conf так, чтобы он обслуживал скрипты / файлы так, как я хочу, но я не знаю, как это сделать.
Я хочу имитировать хостинг-провайдеров, таких как bluehost, godaddy, hostgator и т. Д. Где я могу развернуть скрипт для domain.com/path/
и когда делается запрос по этому пути: domain.com/path/index.php
загружается, если он существует, или возвращается к index.html
или выдает ошибку 404
Кроме того: если запрос сделан непосредственно к сценарию, например: domain.com/path/myscript.php
тогда соответствующий файл myscript.php загружается, если он существует, или выдает ошибку 404.
Я пытался написать свой nginx-app.conf
файл следующим образом:
location /~* {
# try to serve file directly, fallback to front controller
try_files $uri /index.php$is_args$args;
}
Но когда я нажимаю на любые ссылки после развертывания, они просто остаются на той же странице.
После целой вечеринки и работы с невыносимо медленными временами развертывания в гибкой среде я смог придумать следующее, что работает.
location / {
try_files $uri?$args $uri/index.php?$args;
}
Других решений пока нет …