Основные настройки ничем не отличаются от типовых. Специфичное прокомментировано. Дополнительные опции позволяют избежать дублирования страниц. Это важно для продвижения сайта в поисковых системах.
server {
listen 443 ssl http2;
listen [::]:443 ssl http2;
server_name сайт.ком;
...
# Удаление index.php
if ($request_uri ~* "^(.*/)index\.php/*(.*)") {
return 301 $1$2;
}
# Удаление слеша в конце
if (!-d $request_filename) {
rewrite ^/(.+)/$ /$1 permanent;
}
# Удаление двух слешей подряд.
# Осторожно, это не всегда приемлемо!
if ($request_uri ~* "\/\/") {
rewrite ^/(.*) /$1 permanent;
}
# Из документации Laravel
location / {
try_files $uri $uri/ /index.php?$query_string;
}
...
}
Подсмотрено здесь.