Я недавно перешел с Apache на Nginx, и производительность безупречная.
Сайт представляет собой сервер загрузки (в основном) с настраиваемым скриптом PHP.
Вот некоторые примеры URL-адресов:
https://sub.example.com
https://sub.example.com/index.php?dir=foo1/
https://sub.example.com/index.php?dir=foo2/
https://sub.example.com/index.php?dir=foo2/bar1/
https://sub.example.com/index.php?dir=foo2/bar2/
Я хотел бы сделать их дружественными URL-адресами, чтобы они выглядели так:
https://sub.example.com
https://sub.example.com/foo1/
https://sub.example.com/foo2/
https://sub.example.com/foo2/bar1/
https://sub.example.com/foo2/bar2/
Обратите внимание на конечную косую черту, которую создает наш PHP-скрипт.
Каталог доступен с косой чертой или без нее (при ручном вводе URL-адреса) и должен быть доступен с этой косой чертой или без нее после перезаписи.
Есть идеи по поводу перезаписи конфигурации для Nginx?
Вы могли бы использовать try_files чтобы иметь значение для файлов, которые на самом деле существуют в вашей файловой системе, и URI, которые вы хотите указать в качестве параметра, например ваш / foo1 /.
location = / {
try_files $uri /index.php?dir=$uri;
}
В PHP это приведет к:
echo $_GET['dir'];
# /foo1/