2017-02-13 3 views
0

ОБНОВЛЕНИЕ: Новая разработка! Изменение расширения файла в JSP перед загрузкой на сервер (который основан на Apache Apache JSP) изменяет кодировку страницы на указанный UTF-8!utf-8 файлов, измененных на windows-1252, когда ftp'd на сервер

К сожалению, это не помогает, поскольку мне нужно вручную изменять все расширения файлов каждый раз, когда я хочу загружать изменения на серверы. Основываясь на этой последней информации, какие-либо идеи? Bueller?


Я построил сайт на Jekyll. Когда я jekyll подавать он отлично смотрится на моем localhost. document.charset есть "UTF-8". Perf.

Проблема возникает, когда я загружаю ее на наш сервер (www.example.com/static/minisite/). Специальные символы не отображаются правильно (например, «что дальше») &, когда я document.charset говорится: "Windows-1252". Это нарушение всех "и" что Markdown будет автоматически конвертировать в причудливых кавычки.

Все остальное (т.е. www.example.com/sales) на этом сервере „UTF-8“.

Устранение шаги I «ве приняты:

  • Проверено, что все страницы имеют <meta charset="UTF-8">
  • Добавлено encoding: "utf-8" в _config.yml
  • Checked кодирование всех .md файлов на/ЦСИ & .html файлы на/развернуть U sing file -I *.md & file -I *.html. Результаты - это то, что вы ожидаете: about.md: text/plain; charset=utf-8
  • Пробовал добавлять файл .htaccess в каталог со многими вариациями этого: adddefaultCharset UTF-8. Я думаю, что это часто срабатывало и решало проблему. Теперь он дает мне ошибку 404 на каждой папке я положил его в
  • изменил настройки FTP для Force UTF-8
  • Я попытался загрузить файл index.html, который локально является UTF-8 на другой сервер (сайт Drupal я управляю) и document.charset говорит Windows-1252
  • Я попытался основной изменяющимся кодировок каждого файла на обоих ЦСИ и развернуть папки с помощью find -E . -regex '.*\.(html|md|htm)' -exec iconv [-f windows-1252] [-t utf-8] -o {} {} \;
  • Response Headers: Content-Type: текст/html; charset = ISO-8859-1

Я немного раздражен в этой точке. Я не могу сказать, что есть, когда они есть, и где они меняют кодировку. Потому что Markdown решает, что он знает лучше всего и изменит любой «на причудливый», я почти до такой степени, что выкалываю Джекила, поскольку эта проблема возникает только на этом микросайте Джекила, который у меня есть на этом сервере.

+0

Какая кодировка сообщается в заголовках HTTP, возвращаемых сервером? – Waylan

+0

@Waylan Content-Type: text/html; кодировка = ISO-8859-1. Также добавлено в сообщение –

ответ

0

Если проблема связана с загрузкой FTP, попробуйте установить режим передачи FTP на BINARY перед загрузкой файлов, тем самым FTP-сервер не должен изменять ваши текстовые файлы вообще.

Смежные вопросы