я хотел бы добавить ".html" к каждому документу, оканчивающемуся на "/", кроме домашней страницы.
Я пробовал несколько разных способов, используя перезапись и возврат 301 с nginx, но у меня не получилось. прикрепил последнюю версию, которую я сделал, которая делает /*/.html, но второй / не должно быть там.
location / {
try_files $uri $uri/ =404;
return 301 $scheme://$host$request_uri.html;
}
Решение, которое я ищу:
корень: domain.com должен быть доставлен как www.domain.com
файлы должны быть перенаправлены (301) на версию *.html
- domain.com/abc/ на domain.com/abc.html
- domain.com/dir1/abc/ в domain.com/dir1/abc.html
/
из перезаписи. примерно так:rewrite ^(.+)$ $1.html permanent;
Таким образом, если кто-то попытается перейти на example.com/contact, он попадет на example.com/html вместо 404. 30.01.2018.html
может быть обработаноtry_files
напрямую, например:try_files $uri $uri.html $uri/ =404;
. Подробности смотрите по ссылке в моем ответе. 30.01.2018