Что написать в конфиге Nginx для отдачи .html?

Есть такой конфиг:
server {
    listen 0.0.0.0:80;
    server_name  doc.site.ru;
    root         /var/www/doc.site.ru/out/;
    index index.html index.htm;
}


По адресу doc.ixley.ru отдаёт index.html из doc.ixley.ru/out/

А вот по адресу doc.ixley.ru/pages/hello должен отдать hello.html, но не отдаёт, точнее отдаёт если зайти по адресу doc.ixley.ru/pages/hello.html, а вот без префикса расширения .html никак.

И ещё:
В домашней папке есть папка pages и папка posts.
В папке pages лежит файл hello.html (просто страничка) и posts.html (страничка выводит список постов из папки posts)
А в папке posts hello.html (это пост)

Имеем два одинаковых названия файла hello.html, но расположенные в разных местах

Помогите учесть и это пожалуйста. Отмечу что мне нужно знать только как учесть пути, отражение постов в файлах и прочее не нужно, это компилируется отдельно и потом само отразится в файлах.
  • Вопрос задан
  • 2158 просмотров
Решения вопроса 1
Lynn
@Lynn
nginx, js, css
Можно попробовать примерно так:

server {
    listen 80;
    server_name doc.ixley.ru;
    root /var/www/doc.ixley.ru/out/;
    index index.html index.htm;

    location / {
        try_files $uri $uri.html $uri/ =404;
    }
}
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы