Наличие html-страниц без расширения (так называемые «красивые URL-адреса») отображается как html с использованием netlify - PullRequest
0 голосов
/ 10 октября 2018

Я пытаюсь использовать netlify для размещения статического сайта.Я создаю сайт, используя wget -mk http://hostname/, поэтому получаю большое количество статических файлов с переписанными ссылками.

Я хотел бы подтолкнуть их к netlify и иметь этот хост на сайте.

Страницы, оканчивающиеся на .html, обрабатываются как HTML-файлы и отображаются корректно.

Страницы с «симпатичными URL-адресами», такими как /about, обрабатываются как текстовые файлы, а HTML-разметка

Я не могу переименовать все эти файлы, пока не добавлю перезаписи, потому что есть внешние ссылки на сайт, которые я хочу сохранить.

Я попытался настроить _headers файл, но не было ясно, каков был порядок операций.Вот пример _headers файла:

/*.css
  Content-Type: text/css
/*.js
  Content-Type: text/javascript
/*.jpg
  Content-Type: image/jpg
/*.jpeg
  Content-Type: image/jpg
/*.png
  Content-Type: image/png
/*.gif
  Content-Type: image/gif
/*
  Content-Type: text/html

Это обрабатывает все как text / html.Я мог бы удалить последнюю строку, но тогда файлы, которые довольно симпатичны, снова обрабатываются как текст.

Это единственное решение, позволяющее перебирать все файлы и помечать их как html, используя полный путь, в результате чего файл _headers будет выглядеть примерно так:

/about
  Content-Type: text/html
/contact
  Content-Type: text/html
...

Я посмотрел вДокументация netlify и гуглил и не смог найти ничего полезного.

Ответы [ 2 ]

0 голосов
/ 12 октября 2018

Чтобы решить проблему, я написал сценарий оболочки для генерации файла _headers.

Это выглядит так:

find `pwd` -type f |grep  -v \\. |sed "s#`pwd`/##" > list
for i in `cat list`; do 
  echo "/$i" >> _headers; 
  echo "  Content-Type: text/html" >> _headers; 
done
rm list

Я просто проверяю _headersфайл и все файлы с красивыми URL-адресами обрабатываются как html.

0 голосов
/ 11 октября 2018

Вместо того, чтобы пытаться обрабатывать страницы без расширений как HTML.Используйте параметр --adjust-extension.

Если загружен файл типа 'application / xhtml + xml' или 'text / html' и URL-адрес не заканчивается регулярным выражением '. [Hh][Tt] [Mm] [Ll]? ', Эта опция приведет к добавлению суффикса' .html 'к локальному имени файла.

См. Раздел параметров Руководства Wget.

...