Htaccess кодировка windows 1251: Русская кодировка через .htaccess » TRUST-HOST

Содержание

Как указать или сменить кодировку сайта в .htaccess ✔️

Кодировка сайта меняется вручную в том случае, если браузер выбирает неверный вариант кодировки, итогом чего становится появление набора символов, вместо обычного вида веб-страницы. Например, для чтения файлов используется Windows-1251, из-за чего возникают проблемы с ресурсами, на которых используется кодировка UTF-8, которая является стандартной для большинства сайтов.

Как узнать кодировку сайта

Посмотреть кодировку сайта легко — достаточно перейти на любую страницу ресурса и нажать правую кнопку мыши (или сочетание клавиш CTRL+U), чтобы посмотреть исходный код («View page source» или «Просмотр кода страницы»).

Для поиска нужного мета-тега в коде вызовите функцию поиска сочетанием CTRL+F. Затем в строку поиска необходимо ввести «charset», чтобы отыскать нужное значение.

Общий способ

Одной из наиболее часто встречающихся причин считается неправильно прописанный мета-тег content-type

:

<meta http-equiv="Content-Type" content="text/html; charset=utf-8">

Но если после его изменения ничего не меняется, и браузер не считает тег основополагающим, понадобится поменять значение вручную.

Редактирование файла .htaccess

Существует несколько способов, как сменить кодировку в файле .htaccess

На всем сайте

Изменить кодировку сайта целиком можно через .htaccess — файл конфигурации, отвечающий за настройку работы веб-сервера Apache.

Принцип редактирования один для всех панелей управления, но для примера рассмотрим одну из них — ISPmanager. Для изменения кодировки через .htaccess в данной панели управления нужно:

    1. Авторизоваться в панели управления в ISPmanager.
    2. Перейти в раздел «Менеджер файлов». Далее перейти в папку «www» и войти в корневую папку (с названием сайта).
    3. Выбрав в списке файл .htaccess, нажать на кнопку «Создать» и в открывшемся меню выбрать «Изменить».
    4. После этого можно редактировать файл самостоятельно.
    5. Для изменения на стандартный вариант UTF-8, нужно добавить строчку:
AddDefaultCharset UTF-8
    1. Внесение изменений необходимо подтвердить, нажав на кнопку «Сохранить».

Возможно и обратное изменение для которого добавляется:

AddDefaultCharset WINDOWS-1251

В отдельном файле или группе файлов

В некоторых случаях указать кодировку в .htaccess необходимо только для одного файла. Для этого понадобится открыть файл .htaccess в текстовом редакторе и добавить в него следующий блок:

<Files "file.html">
AddCharset UTF-8 .html
</Files>

В результате, директива AddCharset будет конвертировать указанный файл (file.html) в заданную кодировку (UTF-8).

Этого же результата можно достичь, пользуясь директивой ForceType:

<Files "file.html">
ForceType 'text/html; charset=UTF-8'
</Files>

Для внесения изменений кодировки в несколько файлов одновременно, их имена указываются при помощи синтаксиса регулярных выражений.

При комплексных сценариях, применяющихся к одному документу, придется учесть порядок расположения расширений. Например:

AddCharset UTF-8 .utf8
AddCharset windows-1252 .html

В указанном правиле файл «file.utf8.html» будет выводиться в кодировке windows-1252, а «file.html.utf8» — в UTF-8.

Проблема кодировки на сайте ▷ Как изменить кодировку сайта на utf 8 и Что значит слетела кодировка?

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

Как же это проследить и устранить проблему с кодировкой на сайте?

Содержание

Кодировка в meta-теге

Пункт первый

Очень просто. Начните с самого документа. При создании любого html-документа его кодировка указывается в блоке head в meta-теге. Этот самый meta-тег выглядит следующим образом:

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

Данный тег говорит о том, что документ использует кодировку UTF-8, или так называемый Юникод. Наиболее распространенными кодировками являются UTF-8 и Windows-1251. Кодировка UTF-8 работает со всеми символами и является наиболее удобной для сайтов, которые содержат материалы на разных языках. Для кириллицы и английских букв также часто используют кодировку Windows-1251. Выбор кодировки документа всегда остается на ваше усмотрение, главное, чтобы кодировки документа и сервера совпадали. Если вы создаете документ в кодировке Windows-1251, то в meta-теге

utf-8 следует заменить на windows-1251.

Кодировка документа

Пункт второй

Далее. Когда ваш документ готов, и вы определились с его кодировкой, указав её в meta-теге, важно чтобы и сам документ был сохранен в этой кодировке.

Кодировка в .htaccess

Пункт третий

Если при открытии данного документа в браузере перед вами все равно появляются некорректные символы, здесь уже причина в настройках сервера. Тем не менее, решить эту проблему также не сложно. Для этого вам понадобится лишь одна строчка в файле .htaccess. Данный файл находится в корневой директории Вашего сайта, вместе с индексным файлом. Если файл .htaccess отсутствует в корневой директории, то его следует создать. В этом файле нужно прописать следующую строку:

AddDefaultCharset UTF-8

Разумеется, если вы используете Windows-1251, то вместо UTF-8 следует прописать WINDOWS-1251. Затем файл .htaccess нужно сохранить. Перезапускать сервер после этого не обязательно.

Кодировка в базе данных MySQL

Пункт четвертый

После этого некорректные символы с сайта должны исчезнуть. Однако не отовсюду. Кроме файлов сайт держится еще на базах данных, таблицы и поля которых тоже имеют свою кодировку. Кодировка таблиц и полей базы данных должна также совпадать с кодировкой всех файлов сайта и самого сервера. Если же после выставления правильной кодировки в базе данных перед вами все равно возникают непонятные символы, то проблема в кодировке подключения к базе данных. Для решения данной проблемы подключитесь к серверу баз данных с правами mysql root пользователя.

mysql -u root -p

выберите необходимую вам БД

USE имя_базы;

и выполните следующий запрос:

SET NAMES 'utf8’;

Если вы используете кодировку Windows-1251, то вместо utf-8 следует прописать

cp1251. Так данную кодировку называет сервер MySQL.

Наиболее рекомендуемой кодировкой является UTF-8, так как она поддерживает наибольшее количество символов и является практически универсальной для всех языков, однако, выбор всегда остается за вами.

На этом всё. Ваш сайт должен отображаться как надо.

Примечание

Часто возникают ситуации, связанные с тем, что файл .htaccess не работает. Это связано с настройками Apache для вашего сервера или же для отдельного виртуального хоста, на котором содержится Ваш сайт. За опции данного файла отвечает директива AllowOverride, которая используется в конфигурационном файле Apache – httpd.conf. Если данная директива выглядит так: AllowOverride None, то сервер будет игнорировать файлы .htaccess. Для решения этой проблемы следует заменить None на All. Это даст вам возможность переопределять все допустимые настройки с помощью файла .htaccess. После внесения изменений в файл

httpd.conf необходимо либо перезапустить веб-сервер (лучше), либо выполнить команду service httpd reload (перечитать директивы без перезапуска веб-сервера), чтобы изменения вступили в силу.

Подробнее о виртуальных хостах вы можете прочитать в статье Настройка виртуальных хостов в Apache.

кодировка — Как изменить кодировку отчета об ошибке в PHP?

Вывод ошибки MySQL будет зависеть от самой сборки, LANG на сервере (+еще некоторое количество всякой фигни) и того, как отображает у тебя text WEB-сервер

Я бы посоветовал начать отладку с установки в .htaccess параметра

AddDefaultCharset utf-8

В 90% случаев на этом все и заканчивается

Если не поможет, иди по шагам:

  1. На какой ОС все это работает и какая кодировка в этой ОС по умолчанию
  2. В какой кодировке живет сервер SQL
  3. В какой кодировке живет WEB-сервер

Кстати говоря, полученный текст можешь взять, скопировать в буфер и вставить вот сюда: https://www.artlebedev.ru/decoder/ — классная штука, позволяет быстро и просто понять, что происходит

Только копируй прям сразу где увидел, а не из поста выше, например. Символ — вполне себе печатный символ UTF-8, кодировать его куда-то еще не получится ) Так случается после вставки кракозябр куда-то, где контент в UTF-8.. они просто преобразуются в обычные UTF-8 символы.

UPD. Я провел эксперимент:

  1. Взял вашу исходную предполагаемую строчку mysqli_connect(): (HY000/2002): Подключение не установлено, т.к. конечный компьютер отверг запрос на подключение.
  2. Записал ее в файл в кодировке UTF-8:

    $ env | grep LANG LANG=ru_RU.UTF-8

    $ echo «mysqli_connect(): (HY000/2002): Подключение не установлено, т.к. конечный компьютер отверг запрос на подключение.» > q686819.txt

  3. Полученный файл перегнал из UTF-8 в CP-1251 (она же windows-1251)

    $ iconv -f utf-8 -t windows-1251 ./q686819.txt

    mysqli_connect(): (HY000/2002): ����������� �� �����������, �.�. �������� ��������� ������ ������ �� �����������.

Консоль у меня отображает вывод в UTF-8, но выводимые символы имеют кодировку CP-1251

Отсюда можно сделать следующий полезный для вас вывод: исходный текст ваша сборка MySQL выводит в кодировке windows-1251 (скорее всего потому что собрана под Windows, а там в русской локализации по умолчанию именно windows-1251). А вопросики вы видите потому, что смотрите на символы через призму кодировку utf-8

Решение: либо поменять сборку MySQL на EN, без локализации на русском (возможно там в параметрах можно поменять LANG для ошибок или что-то вроде того — обычно такие пакеты делают мультиязычными, а язык выбирается из параметров ОС), либо ничего не менять и выводить в windows-1251 (как сейчас), но смотреть на это через призму той же кодировки windows-1251, например в .htaccess

AddDefaultCharset windows-1251

Попробуйте, тут нужны эксперименты именно с вашей сборкой и на Windows. К сожалению подробнее я вам не подскажу — пользуюсь Linux и обычными Apache httpd и mariadb из репозиториев. Но направление определенно верное

Htaccess (кодировка): настройка, примеры использования

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

Для чего необходима кодировка

Для сайта существует основная кодировка, которую называют Default Charset. Включена она в специальный файл .htaccess. Кодировка необходима для того, чтобы верно определить правило, согласно которому символы будут преобразовываться в кодовые значения.

Пару десятков лет назад кодировки были совсем маленькими. Они включали в себя не более семи бит информации. Примером может быть кодировка ASCII. Теперь их появилось очень большое количество. Среди них — и самые популярные UTF-8, Windows-1251.

Суть заключается в том, что документы, имеющие разные кодировки, будут выглядеть по-разному. Именно по этой причине на страницах сайта появляются ошибки. Браузер пользователя может быть настроен на один тип кодировки, а файл .htaccess на сервере содержит в себе другую. В результате весь текст на страницах превращается в набор непонятных символов.

Основные кодировки

В .htaccess можно указать параметр, при помощи которого будет определяться главная кодировка для всего веб-портала. Кроме этого можно прописать и другие кодировки, что позволит им корректно отображаться на всех страницах сайта. Веб-разработчиками в .htaccess кодировка обычно указывается двух видов — UTF-8 и Windows-1251. Именно они по умолчанию используются большим числом браузеров и текстовых редакторов.

Во избежание образования закорючек, которые невозможно разобрать, необходимо либо настроить главную кодировку всего сайта при помощи параметра Default Charset, а также в .htaccess запретить перекодировку файлов либо прописать все необходимые кодировки. Ведь главной проблемой является то, что, например, пользователь может отправить какие-то данные в совершенной другой кодировке, которую сервер прочитать не сможет. Такие действия нужно заранее предупредить.

Как настроить кодировку сайта в файле .htaccess

Кодировка Default Charset, являющаяся ключевой, обрабатываемая сервером по умолчанию и отправляемая браузеру, указывается при помощи опции AddDefaultCharset. Необходима она для того, чтобы добавлять настройку кодировки по умолчанию. При отправке заголовков HTTP в них прописывается правило, которое сообщает браузеру, в какой кодировке следует рассматривать все символы на сайте. Именно поэтому в разделе Content-Type нужно указывать верную кодировку. Это и есть настройка .htaccess.

Вышеуказанная опция является основной необходимой директивой для того, чтобы настраивать кодировку сайта в файле. Эта команда способна окончательно решить проблему, связанную со скриптами, по умолчанию использующими неизвестные для русскоязычных браузеров кодировки, а не те, которые нужны. Если не прописать параметр, браузер бы выдал ошибку. В противном случае автоматически все документы перекодируются. Нужно учесть, что не все браузеры видят кодировки одинаково. По этой причине лучше использовать самые известные – UTF-8 и Windows-1251. Они известны всем браузерам.

От проблем с кодировкой можно избавиться при помощи активации автоматической перекодировки документов. Для этого в файл .htaccess включается специальная опция CharsetSourceEnc. После нее необходимо прописать основную кодировку. Все остальные будут перекодироваться в нее. Если по той или иной причине перекодировку нужно будет убрать, то следует написать в файле команду CharserDisable On.

Задание еще одной кодировки для отдельных разделов сайта

Такое не случается часто, но иногда возникает необходимость, чтобы одна страница либо целая часть раздела отображалась на другом языке. Соответственно, нужна и другая кодировка. В случае нахождения в корневой директории файла .htaccess с прописанной кодировкой, все страницы сайта будут отображаться именно в ней. Результатом может быть то, что человек зайдет в иностранный раздел веб-сайта, а там вместо текста на нужном ему языке будет отображаться группа непонятных символов и букв.

Для того чтобы с этой проблемой разобраться, нужна дополнительная настройка .htaccess. Необходимо создать еще один такой же файл и в нем прописать команду AddType, в которой указывается дополнительная кодировка. Этот файл может действовать как на весь веб-сайт, так и на отдельные страницы. Это зависит от того, где будет расположен файл .htaccess. Если разместить его внутри папки с определенным языком сайта, его конфигурации будут работать лишь на данную часть. Остальные же будут функционировать по правилам первого .htaccess, который находится в корневой директории сайта.

Редирект при помощи .htaccess

Многие разработчики сайтов сталкиваются с такой ситуацией, когда при изменении действующего проекта нужно сохранить старые адреса некоторых страниц. Особенно часто такое случается, когда меняется система управления контентом, на которой сайт работает. Бывает, что изначально сайт являлся статическим и о логичности адресов никто не заботился. Необходима переадресация (.htaccess требует внесения изменений).

Переадресация также нужна, если администратор хочет сохранить позиции страниц сайта в выдаче поисковых систем. Ведь повышать рейтинг с нуля – это трудная задача.

Что нужно для того, чтобы была организована такая переадресация? .htaccess должен использоваться на хостинге. Редирект в нем осуществляется при помощи опции Redirect 301, после которой указывается адрес новой страницы.

Ограничение доступа

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

Используются следующие команды:

  • Для запрета доступа ко всему сайту в файле прописывается команда deny from all.
  • Для запрета доступа с определенного ip-адреса используется команда deny from ip_адрес_пользователя.

Защита файлов

Скорее всего, каждый пользователь встречал абсолютно идентичные статьи на разных веб-сайтах. Чаще всего бывает так, что их попросту воруют с других ресурсов. Конечно, поисковики борются с таким явлением, как дублирование страниц, но очень часто они не совсем правильно выбирают первоисточник. Для копирайтеров и программистов это является очень серьезной проблемой. Ведь для того, чтобы написать качественный контент, уходит много времени и сил. А потом поисковая система накладывает санкции за скопированный материал. Это неприятно. Часто с текстом также воруют и изображения. При этом большое число таких воров даже не загружают изображения с чужих ресурсов. Чтобы не перегружать свои серверы, они просто указывают ссылки на картинки с первоисточника. Такая вставка ссылки именуется хотлинком. Кроме ссылок на картинки их можно вставлять, указывая на файлы, которые доступны для загрузки. Для автора контента такое явление крайне неприятно. Сервер первоисточника из-за них также перегружается.

В файле .htaccess можно указать файлы, которые будут защищены от хотлинка. В нем прописываются расширения, к которым будет запрещен доступ. Также для отельных файлов или целых групп можно установить пароль. Затем файл .htaccess помещается в директорию, доступ к которой нужно закрыть.

Диагностика ошибок

Бывает так, что возникает ошибка с кодом «500» после редактирования либо размещения файла .htaccess. Ошибка такая появляется из-за недочетов в самом файле. Можно узнать причины в файле, который находится в директории домена, в папке с отчетами.

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

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

Как исправить кодировку по умолчанию в Apache

Итак, Вы установили Apache, PHP, MySQL и уже готовы работать, как вдруг выясняется, что вместо букв браузер выдаёт Вам кракозябры вроде этих.

Конечно, можно и нужно добавлять в код страницы

<meta http-equiv="content-type" content="text/html; charset=utf-8" />

(либо другая нужная нам кодировка вместо UTF-8) и это поможет для конкретной страницы. Однако будет правильным установить кодировку UTF-8 на Вашем веб-сервере по умолчанию.

По умолчанию Apache использует windows-1251.

Настройки кодировки в веб-сервере Apache хранятся в файле .htaccess (начинается с точки). Файл размещается в корневом каталоге веб-сервера (т.е. WWW). Если такого файла нет, его необходимо создать.

Все следующие манипуляции будем проводить под root’ом. Если Вы точно знаете, что делаете, можете сразу зайти под пользователем root. К примеру, через

sudo -s

В противном случае, перед каждой командой необходимо дописывать sudo. Итак, в моём примере корневой каталог веб-сервера лежит по адресу /var/www (у Вас путь может быть своим). Я захожу в каталог командой

cd /var/www

Далее создаем файл .htaccess. Я предпочитаю делать это командой

nano .htaccess

потому что так файл сразу открывается в текстовом редакторе nano.

Далее в этом файле прописываем строку

AddDefaultCharset utf-8

которая объясняет, что все веб-страницы необходимо выводить в кодировке UTF-8 (или той, которую Вы укажете).

Можно вообще отключить кодировку по умолчанию, добавив строку

AddDefaultCharset Off

Это может пригодиться, если у Вас на веб-сервере лежат файлы в разных кодировках. Но тогда Вам придется указывать тип кодировки в каждом документе.

Для вступления изменений в силу Apache перезагружать не надо.

Что еще нужно знать о .htaccess?

Файл .htaccess может находиться не только в корневом каталоге веб-сервера, но и в подкаталоге конкретного сайта. В этом случае настройки файла из подкаталога перекрывают настройки файлы из «корня», т.е. являются приоритетными.

Как настроить кодировку сайта самостоятельно

Как кодировка влияет на отображение сайта, чем отличается UTF-8 от Windows 1251 и где указать кодировку.

Разбираем, на что влияет кодировка, нужно ли указывать ее самостоятельно, и почему могут появиться так называемые «кракозябры» на сайте.

Зачем нужна кодировка

Кодировка (Charset) — способ отображения кода на экране, соответствие набора символов набору числовых значений. О ней сообщает строка Content-Type и сервер в header запросе.

Несовпадение кодировок сервера и страницы будет причиной появления ошибок. Если они не совпадают, информация декодируется некорректно, так что контент на сайте будет отображаться в виде набора бессвязных букв, иероглифов и символов, в народе называемых «кракозябрами». Такой текст прочитать невозможно, так что пользователь просто уйдет с сайта и найдет другой ресурс. Или останется, если ему не очень важно содержание:

Студентка списывала реферат с формулами, а на сайте слетела кодировка. Реальная история

Google рекомендует всегда указывать сведения о кодировке, чтобы текст точно корректно отображался в браузере пользователя.

Кодировка влияет на SEO?

Разберемся, как кодировка на сайте влияет на индексацию в Яндекс и Google.

Яндекс четко заявляет:

«Тип используемой на сайте кодировки не влияет на индексирование сайта. Если ваш сервер не передает в заголовке кодировку, робот Яндекса также определит ее самостоятельно».

Позиция Google такая же. Поисковики не рассматривают Charset как фактор ранжирования или сигнал для индексирования, тем не менее, она косвенно влияет на трафик и позиции.

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

Пример страницы со слетевшей кодировкой

Поэтому она важна для SEO, хоть и влияет на него косвенно через поведенческие. Пользователи должны видеть читабельный текст на человеческом языке, чтобы работать с сайтом.

Виды кодировок

Существует довольно много видов, но сейчас распространены два:

UTF-8

Unicode Transformation Format — универсальный стандарт кодирования, который работает с символами почти всех языков мира. Символы могут занимать от 1 до 4 байт, такое кодирование позволяет создавать мультиязычные сайты.

Есть несколько вариантов — UTF-8, 16, 32, но чаще используют восьмибитное.

Windows-1251

Этот вид занимает второе место по популярности после UTF-8. Windows-1251 — кодирование для кириллицы, созданное на базе кодировок, использовавшихся в русификаторах операционной системы Windows. В ней есть все символы, которые используются в русской типографике, кроме значка ударения. Символы занимают 1 байт.

Выбор кодировки остается на усмотрение веб-мастера, но UTF-8 используют намного чаще — ее поддерживают все популярные браузеры и распознают поисковики, а еще ее удобнее использовать для сайтов на разных языках.

Определить кодировку страницы своего или чужого сайта можно через исходный код страницы. Откройте страницу сайта, выберите «Просмотр кода страницы» (сочетание горячих клавиш Ctrl+U» в Google Chrome) и найдите упоминание «charset» внутри тега head.

На странице сайта используется кодировка UTF-8:

Указание кодировки в коде страницы

Узнать вид кодирования можно с помощью «Анализа сайта». Сервис проверяет в том числе и техническую сторону ресурса: анализирует серверную информацию, определяет кодировку, проверяет редиректы и другие пункты.

Фрагмент анализа серверной информации сайта

С помощью этого же сервиса можно проверить корректность указанного кодирования. Аудит внутренних страниц «Анализа сайта» проверяет кодировку сервера и сравнивает ее с той, которая указана на внутренней странице. Найденные ошибки Анализ покажет в результатах проверки, и вы сразу узнаете, где нужно исправить.

Отчет о технических данных Кодировка сервера и страницы

Проверить кодировку еще можно через сервис Validator.w3, о котором писали в статье о проверке валидации кода. Нужная надпись находится внизу страницы.

Кодировка сайта в валидаторе

Если валидатор не обнаружит Charset, он покажет ошибку:

Ошибка указания кодировки

Но валидатор работает не точно: он проверяет только синтаксис разметки, поэтому может не показать ошибку, даже если кодирование указано неправильно.

Если кодировка не отображается

Если вы зашли на чужой сайт с абракадаброй, а вам все равно очень интересно почитать контент, то в Справке Google объясняют, как исправить кодирование текста через браузер.

О проблеме возникновения абракадабры на вашем сайте будут сигнализировать метрики поведения: вырастут отказы, уменьшится глубина просмотров. Но скорее всего вы и раньше заметите, что что-то пошло не так.

Главное правило — для всех файлов, скриптов, баз данных сайта и сервера должна быть указана одна кодировка. Ошибка может возникнуть, если вы случайно указали на сайте разные виды кодировки.

Яндекс советует использовать одинаковую кодировку для страниц и кириллических адресов структуры. К примеру, если робот встретит ссылку href=»/корзина» на странице с кодировкой UTF-8, он сохранит ее в этом же UTF-8, так что страница должна быть доступна по адресу «/%D0%BA%D0%BE%D1%80%D0%B7%D0%B8%D0%BD%D0%B0».

Где указать кодировку сайта

Если проблема возникла на вашем сайте, способ исправления зависит от вида сайта. Для одностраничника достаточно указать кодировку в мета-теге страницы, а для большого сайта есть разные варианты:

  • кодировка в мета-теге;
  • кодировка в .htaccess;
  • кодировка документа;
  • кодировка в базе данных MySQL.

Кодировка в мета-теге

Добавьте указание кодировки в head файла шаблона сайта.

При создании документа HTML укажите тег meta в начале в блоке head. Некоторые браузеры могут не распознать указание кодировки, если оно будет ниже.

Мета-тег может выглядеть так:

<meta http-equiv="Content-Type" content="text/html; charset=utf-8">

или так:

<meta charset="utf-8">

В HTML5 они эквивалентны.

Тег кодировки в HTML

В темах WordPress обычно тег «charset» с кодировкой указан по умолчанию, но лучше проверить.

Кодировка в файле httpd.conf

Инструкции для сервера находятся в файле httpd.conf, обычно его можно найти на пути «/usr/local/apache/conf/».

Если вам нужно сменить кодировку Windows-1251 на UTF-8, замените строчку «AddDefaultCharset windows-1251» на «AddDefaultCharset utf-8».

Осторожнее: если вы измените в файле кодировку по умолчанию, то она изменится для всех проектов на этом сервере.

Убедитесь, что сервер не передает HTTP-заголовки с конфликтующими кодировками.

Кодировка в .htaccess

Добавьте кодировку в файл .htaccess:

  1. Откройте панель управления хостингом.
  2. Перейдите в корневую папку сайта.
  3. В файле .htaccess добавьте в самое начало код:
    1. для указания кодировки UTF-8 — AddDefaultCharset UTF-8;
    2. для указания кодировки Windows-1251 — AddDefaultCharset WINDOWS-1251.
  4. Перейдите на сайт и очистите кэш браузера.

Кодировка документа

Готовые файлы HTML важно сохранять в нужной кодировке сайта. Узнать текущую кодировку файла можно через Notepad++: откройте файл и зайдите в «Encoding». Меняется она там же: чтобы сменить кодировку на UTF-8, выберите «Convert to UTF-8 without BOOM». Нужно выбрать «без BOOM», чтобы не было пустых символов.

Кодировка Базы данных

Выбирайте нужную кодировку сразу при создании базы данных. Распространенный вариант — «UTF-8 general ci».

Где менять кодировку у БД:

  1. Кликните по названию нужной базы в утилите управления БД phpMyAdmin и откройте ее.
  2. Кликните на раздел «Операции»:
  3. Введите нужную кодировку для базы данных MySQL:
  4. Перейдите на сайт и очистите кэш.

С новой БД проще, но если вы меняете кодировку у существующей базы, то у созданных таблиц и колонок заданы свои кодировки, которые тоже нужно поменять.

Для всех таблиц, колонок, файлов, сервера и вообще всего, что связано с сайтом, должна быть одна кодировка.

Проблема может не решиться, если все дело в кодировке подключения к базе данных. Что делать:

  1. Подключитесь к серверу с правами mysql root пользователя:
    mysql -u root -p
  2. Выберите нужную базу:
    USE имя_базы;
  3. Выполните запрос:
    SET NAMES ‘utf8’;

Если вы хотите указать Windows-1251, то пишите не «utf-8», а «cp1251» — обозначение для кодировки Windows-1251 у MySQL.

Чтобы установить UTF-8 по умолчанию, откройте на сервере my.cnf и добавьте следующее:

В области [client]:

default-character-set=utf8

В области [mysql]:

default-character-set=utf8

В области [mysqld]:

collation-server = utf8_unicode_ci
init-connect='SET NAMES utf8'

character-set-server = utf8

Вы когда-нибудь сталкивались с проблемами кодировки на сайте?

Как изменить кодировку сайта – База знаний Timeweb Community

Иногда возникают случаи, когда при открытии сайта отображается не привычный нам контент, а сплошной набор нечитаемых символов. Это связано с тем, что кодировка ресурса не совпадает с той кодировкой, которая устанавливается сервером. Например, для чтения файлов используется Windows-1251, а требуется UTF-8.

Что такое кодировка сайта и как ее можно изменить – об этом и поговорим в сегодняшней статье.

Что такое кодировка

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

Вот наглядный пример того, как воспринимается компьютером латинский алфавит и прочие символы:

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

Типы кодировок

Существует несколько типов кодировок:

  1. ASCII – первая кодировка, которая была признана Американским национальным институтом мировых стандартов. Для ее использования задействуется 7 бит, где первые 128 значений включают в себя весь английский алфавит, числа, знаки и символы. Такая кодировка ранее использовалась на англоязычных ресурсах.
  2. Кириллица – вариант российской кодировки, используемый на русскоязычных сайтах и блогах.
  3. КОИ8 (код обмена информацией 8-битный) – была разработана для кодирования букв кириллических алфавитов. Распространена в Unix-подобных ОС и электронной почте. Постепенно исчезает в связи с приходом Юникода.
  4. Windows 1250-1258 – 8-битные кодировки, зародившиеся после появления операционной системы Windows. Например, 1250 – все языки центральной Европы, 1251 – кириллица. В ней присутствуют все буквы русского алфавита, а также символы (за исключением знака ударения).
  5. UTF-8 – наиболее используемый тип кодировок, работающий практически со всеми языками мира. Символы занимают от 1 до 4 байт, что дает возможность создавать мультиязычные веб-сайты. Помимо UTF-8, есть такие варианты, как UTF-16 и UTF-32, однако предпочтение отдается первому типу. 

Существуют и другие типы кодировок, но они используются в меньшей степени либо не используются вообще. 

Как определить кодировку на сайте

Узнать кодировку своего или чужого сайта довольно просто, достаточно просмотреть исходный код страницы. Сделать это можно следующим образом:

  1. Открываем сайт, на котором необходимо посмотреть кодировку, и кликаем правой кнопкой мыши по любой области. В отобразившемся меню выбираем «Просмотр кода страницы». Также можно воспользоваться комбинацией клавиш «CTRL+U».
  2. В результате перед нами отобразится новое окно с кодом страницы – в нем воспользуемся комбинацией клавиш «CTRL+F» для поиска строки, отвечающей за кодировку веб-страницы. Вводим запрос «charset» и смотрим результат.

После charset указано значение UTF-8 – это означает, что данная кодировка используется на рассматриваемом сайте. Если вы увидели, что на вашем сайте указана некорректная кодировка, то это можно исправить. Подробнее о том, как это сделать, поговорим далее.

Где и как изменить кодировку

Все зависит от сайта. Способ установки кодировки может различаться: если используется одностаничник, то достаточно в HTML-файле прописать мета-тег в блоке <head>:

В противном случае нам потребуется отредактировать файл .htaccess. Рассмотрим на примере хостинга Timeweb, как это можно сделать.

  1. Открываем личный кабинет и переходим в раздел «Файловый менеджер». В нем перемещаемся в директорию с сайтом и находим в корне файл .htaccess – открываем его двойным кликом мыши.
  2. В начало файла необходимо добавить следующий код:

Для UTF-8: AddDefaultCharset UTF-8

Для Windows-1251: AddDefaultCharset WINDOWS-1251

Открываем свой сайт и видим, что ничего не изменилось – так и должно быть. Чтобы внести изменения, очищаем кэш с помощью комбинации клавиш «CTRL+F5» и смотрим результат.

Как видите, сменить кодировку на своем сайте легко. Аналогичным образом мы можем изменить кодировку и на всем сервере – для этого необходимо выполнить следующее (актуально для веб-сервера Apache):

  1. Находим файл httpd.conf, который расположен по адресу: «/usr/local/apache/conf/», и открываем его.
  2. Если нужно поменять Windows-1251 на UTF-8, то меняем строку «AddDefaultCharset windows-1251» на «AddDefaultCharset utf-8».

Если вы поменяете кодировку по умолчанию, то она будет изменена для всех ресурсов, находящихся на данном сервере.

Смена кодировки базы данных

В данном случае нам потребуется открыть базу данных через личный кабинет хостинга и изменить значение кодировки в разделе «Операции». Давайте рассмотрим, как это можно сделать через админку Timeweb.

  1. Переходим в свой аккаунт и открываем раздел «Базы данных MySQL» – в нем находим нужную базу данных и кликаем по кнопке «phpMyAdmin».
  2. В отобразившемся окне вводим пароль и следуем далее.
  3. Переходим к нужной базе данных и в верхнем меню выбираем «Операции».
  4. Указываем в нижнем блоке значение «utf8mb4_general_ci» и в правой части жмем на кнопку «Вперед».
  5. Готово! Теперь база данных использует кодировку UTF-8.

На этом статья подходит к концу. Теперь вы знаете больше о кодировке сайта и можете легко ее изменить в случае необходимости. Спасибо за внимание!

Htaccess (кодировка): настройка, примеры использования

Каждый, занимаясь серфингом в Интернете, попадал на такие веб-страницы и сайты, которые отображаются некорректно. Например, открыв сайт, пользователь видит вместо обычного текста различные каракули, среди которых можно выделить иероглифы, дуги, символы и другие знаки. Скорее всего, вы увидите подобное, когда зайдете на любой китайский или японский сайт. Все это связано с тем, что в файле .htaccess используются другие настройки.Кодировка в этих странах другая. Правильно настроенный файл позволит избежать появления на сайте таких непонятных символов.

Для чего нужна кодировка?

Для сайта существует базовая кодировка, которая называется Default Charset. Он включен в специальный файл .htaccess. Кодировка необходима для того, чтобы правильно определить правило, по которому символы будут преобразованы в кодовые значения.

Пару десятилетий назад кодировки были совсем небольшими.Они включали не более семи бит информации. Примером может служить кодировка ASCII. Сейчас их очень много. Среди них — и самый популярный utf-8, Windows-1251.

Суть в том, что документы, имеющие разные кодировки, будут выглядеть по-разному. Именно по этой причине на страницах сайта появляются ошибки. Браузер пользователя может быть настроен для одного типа кодировки, а файл .htaccess на сервере содержит другой. В результате весь текст на страницах превращается в набор непонятных символов.

Basic Encodings

AT .htaccess вы можете указать параметр, по которому будет определяться основная кодировка для всего веб-портала. Кроме того, вы можете зарегистрировать другие кодировки, что позволит корректно отображать их на всех страницах сайта. Веб-разработчики в кодировке .htaccess обычно указываются в двух типах — utf-8 и Windows-1251. По умолчанию они используются в большом количестве браузеров и текстовых редакторов.

Во избежание образования корочек, которые невозможно разобрать, необходимо либо выставить основную кодировку всего сайта с помощью параметра Default Charset, а также в.htaccess, чтобы запретить преобразование файлов или прописать все необходимые кодировки. Ведь основная проблема в том, что, например, пользователь может отправлять какие-то данные в совершенно другой кодировке, которую сервер не может прочитать. О таких действиях нужно предупреждать заранее.

Как установить кодировку сайта в файле .htaccess

Кодировка Charset по умолчанию, которая является ключевой, обрабатывается сервером по умолчанию и отправляется в браузер, указывается с помощью параметра AddDefaultCharset. Необходимо добавить настройку кодировки по умолчанию.При отправке заголовков HTTP им назначается правило, которое сообщает браузеру, какую кодировку следует учитывать для всех символов на сайте. Поэтому в разделе Content-Type нужно указать правильную кодировку. Это настройка для .htaccess.

Указанная выше опция необходима Директива для настройки кодировки сайта в файле. Эта команда способна окончательно решить проблему, связанную со скриптами, которые по умолчанию используют неизвестные кодировки для русскоязычных браузеров, а не те, которые нужны.Если вы не укажете параметр, браузер выдаст ошибку. В противном случае все документы автоматически перекодируются. Следует отметить, что не все браузеры видят кодировки одинаково. По этой причине лучше использовать самые известные utf-8 и Windows-1251. Они известны всем браузерам.

От проблем с кодировкой можно избавиться, помогая активировать автоматическое преобразование документов. Для этого в файл .htaccess включена специальная опция CharsetSourceEnc. После этого нужно написать основной набор символов.Все остальное будет в нее перекодировано. Если по тем или иным причинам вам необходимо удалить транскодирование, вам следует записать в файл команду CharserDisable On.

Указание другой кодировки для отдельных разделов сайта

Это случается не часто, но иногда возникает необходимость в отображении одной страницы или всей части раздела на другом языке. Соответственно нам нужна другая кодировка. Если в корневом каталоге вы найдете файл .htaccess с указанной кодировкой, то в нем будут отображаться все страницы сайта.Результатом может быть то, что человек перейдет в чужой раздел сайта, и там вместо текста на нужном ему языке отобразится группа непонятных символов и букв.

Чтобы разобраться в этой проблеме, потребуется дополнительная настройка. htaccess. Необходимо создать еще один такой же файл и добавить в него команду AddType, задающую дополнительную кодировку. Этот файл может действовать как на всем сайте, так и на отдельных страницах. Это зависит от того, где находится.htaccess расположен. Если вы поместите его в папку с определенным языком сайта, его конфигурации будут работать только в этой части. Остальные будут работать по правилам первого .htaccess, который находится в корневом каталоге сайта.

Редирект с .htaccess

Многие разработчики сайтов сталкиваются с такой ситуацией, когда при изменении существующего проекта нужно сохранить старые адреса некоторых страниц. Особенно часто это происходит при изменении системы управления контентом, на которой работает сайт.Бывает, что изначально сайт был статичным и никому не было дела до логики адресов. Требуется перенаправление (.htaccess требует изменений).

Перенаправление также необходимо, если администратор хочет сохранить позиции страниц сайта в поисковых системах. Ведь поднять рейтинг с нуля — задача непростая.

Что нужно для обеспечения такого пересылки? На хостинге следует использовать .htaccess. Редирект в нем осуществляется с помощью опции Redirect 301, после чего указывается адрес новой страницы.

Ограничение доступа

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

Используются следующие команды:

  • Чтобы запретить доступ ко всему сайту в файле, прописывается команда deny from all.
  • Чтобы запретить доступ с определенного IP-адреса, используйте команду deny from ip_address_user.

Защита файлов

Скорее всего, каждый пользователь метабсолютно одинаковые статьи на разных сайтах. Чаще всего бывает, что они просто воруют с других ресурсов. Конечно, поисковые системы борются с таким явлением, как дублирование страниц, но очень часто они не совсем правильно выбирают источник. Для копирайтеров и программистов это очень серьезная проблема. Ведь для того, чтобы написать качественный контент, нужно много времени и сил. И тогда поисковик налагает санкции за скопированный материал.Это неприятно. Часто воруют также текст и изображения. При этом большое количество таких воров даже не скачивают изображения с зарубежных ресурсов. Чтобы не перегружать свои серверы, они просто указывают ссылки на картинки из первоисточника. Такая вставка ссылки называется хотлинком. Помимо ссылок на картинки, вы можете вставлять их, указывая на файлы, доступные для загрузки. Для автора контента это явление крайне неприятно. Сервер источника тоже из-за них перегружен.

В файле .htaccess вы можете указать файлы, которые будут защищены от хотлинков. Он указывает расширения, к которым будет отказано в доступе. Также для файлов отеля или целых групп вы можете установить пароль. Затем файл .htaccess помещается в каталог, который вы хотите закрыть.

Диагностика ошибок

Бывает, что после редактирования или размещения файла .htaccess возникает ошибка с кодом «500». Эта ошибка возникает из-за недостатков самого файла. Причины можно узнать в файле, который находится в каталоге домена, в папке с отчетами.

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

Как видите, файл .htaccess нужен как для настройки кодировки сайтов, так и для других полезных операций, позволяющих грамотно управлять разработкой и поддержкой различных проектов.

Как создать файл .htaccess — Blogh2.com

Как создать файл .htaccess — Blogh2.com

Вы здесь:
Домашняя страница — PHP — Основы PHP — Как создать файл.htaccess файл

Сервер Apache (на котором размещено большинство сайтов) имеет очень полезную возможность устанавливать определенные настройки сервера для определенного каталога (в частности, для одного сайта). Такой файл называется .htaccess … Однако создать его в системе Windows просто не получится. В этой статье я расскажу новичкам , как создается .htaccess в Windows .

Особенность файла в том, что у него нет имени, есть только расширение.Это норма для систем Unix , но для Windows это не совсем норма. Итак, шагов для создания .htaccess следующие:

  1. Откройте текстовый редактор ( Notepad + + или даже обычный Notebook ).
  2. В меню « Файл » выберите « Сохранить как ».
  3. В раскрывающемся списке « Тип файла » выберите « Все файлы ».
  4. Введите имя « .htaccess » (конечно, без кавычек).
  5. Нажать кнопку « Сохранить ».

Все, файл htaccess создан … Затем вы можете снова открыть его в любом текстовом редакторе и отредактировать.

Для новичков кое-что добавлю. В этом файле необходимо сразу прописать кодировку сайта. Если это UTF-8 :

AddDefaultCharset UTF-8

Если это Windows-1251 :

AddDefaultCharset CP1251

Далее этот файл необходимо поместить в корень сайта, где он находится index file (обычно это index.html или index.php ). Я писал об этом потому, что у многих новичков именно по этой причине возникают проблемы с кодировкой на сайте.

Предыдущая статья Следующая статья

Копирование материалов разрешено только с указанием автора (Михаил Русаков) и проиндексированной прямой ссылкой на сайт (http://myrusakov.ru)!

Добавить в друзья ВК : http://vk.com/myrusakov.
Если хотите оценить меня и мои работы, то напишите это в моей группе: http: // vk.com / rusakovmy.

Если вы не хотите пропустить новые материалы на сайте,
то вы можете подписаться на обновления : Подписаться на обновления

Если у вас остались вопросы, или у вас есть желание прокомментировать эту статью, то вы можете оставить свой комментарий внизу страницы.

Порекомендуйте эту статью своим друзьям:

Если вам понравился сайт, то разместите ссылку на него (у себя на сайте, на форуме, в контакте):

  1. Кнопка:

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

  2. Текстовая ссылка:
    Как создать свой сайт

    Это выглядит так: Как создать свой сайт

  3. BB-код ссылки для форумов (например, можно поставить в подписи):

    [URL = «https: // myrusakov.ru »] Как создать свой сайт [/ URL]

Опубликовано админ

Просмотреть все сообщения администратора

Сообщение навигации

utf-8 отображается некорректно | Форум поддержки Firefox

Во всех стандартах указано, что предпочтительной кодировкой символов по умолчанию для html-документов является utf-8.Так почему же Firefox реализует проприетарную кодировку, принадлежащую одному производителю, особенно при отображении документов в системах, для которых Windows является ругательством? Даже если вы думаете, что это значение по умолчанию отвечает интересам ваших клиентов, почему бы вам не разрешить своим клиентам принимать собственное решение о кодировке по умолчанию?

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

«с использованием ОС по умолчанию для кодировки символов». Но я использую Ubuntu, и кодировка символов Ubuntu по умолчанию не может быть проприетарной кодовой страницей Microsoft!

Исправьте неисправный дефолт.

Во всех стандартах указано, что предпочтительной кодировкой символов по умолчанию для html-документов является utf-8. Так почему же Firefox реализует проприетарную кодировку, принадлежащую одному производителю, особенно при отображении документов в системах, для которых Windows является ругательством?Даже если вы думаете, что это значение по умолчанию отвечает интересам ваших клиентов, почему бы вам не разрешить своим клиентам принимать собственное решение о кодировке по умолчанию? Я создал .htaccess на своем сайте разработки, чтобы явно указать, что изначально должно было быть сервером по умолчанию, но FileZilla не показывает .htaccess на локальной стороне, и единственная документация, которую я могу найти, — это то, как его получить. для отображения скрытых файлов на стороне сервера. «с использованием ОС по умолчанию для кодировки символов.»Но я использую Ubuntu, и кодировка символов Ubuntu по умолчанию не может быть проприетарной кодовой страницей Microsoft! Исправьте неисправный дефолт.

Изменено , автор: jamescobban

Обработка кодировок (UTF-8)

Время от времени меня просят увеличить количество кодировок, поддерживаемых TextMate. Обычно я отвечаю, что пользователь должен использовать UTF-8, поэтому вот немного истории, причины использования UTF-8 и советы по работе с ним в разных контекстах.

Изначально у нас был ASCII, который определял 128 символов (некоторые из них были управляющими символами). Каждый символ может быть представлен 7 битами, и вы можете увидеть их все, запустив man ascii в своей оболочке.

Поскольку ASCII содержит только буквы A-Z (без диакритических знаков), было сделано несколько 8-битных расширений (например, CP-1252, MacRoman, iso-8859-1), но 8-битного недостаточно, чтобы добавить, например, греческие буквы, поэтому существует несколько вариантов (MacRoman, MacGreek, MacTurkish,…).

Различные 8-битные кодировки обычно не взаимозаменяемы без потерь, поэтому пришлось создать новый стандарт (Unicode), который является расширенным набором всех существующих кодировок.

Unicode — 32-битный, что дает ему много возможностей для роста, например кодировка по умолчанию для документов, передаваемых по http (iso-8859-1), не содержит символа € и не имеет места для его добавления.

Итак, Unicode должен продавать себя, потому что это единственный способ представить все символы, которые вы можете вводить как сейчас, так и в будущем.

Но байт составляет 8 бит (октет), и есть много программного обеспечения, которое обрабатывает строки как потоки октетов, и некоторые из них ожидают найти разные токены в этих строках, представленных с использованием их значений ASCII (например, парсеры, компиляторы и интерпретаторы) .

Вот где UTF-8 входит в картину. UTF-8 — это 8-битное представление Unicode, и когда дело доходит до новых протоколов, RFC 2277 от IETF говорит: протоколы ДОЛЖНЫ иметь возможность использовать кодировку UTF-8 .

Помимо 8-битной кодировки и возможности представления Unicode, он имеет еще несколько очень хороших свойств:

  1. Каждый символ ASCII представлен как символ ASCII в UTF-8.
  2. Каждый байт UTF-8, который выглядит как символ ASCII, является символом ASCII.
  3. Генерирование случайной 15-байтовой последовательности, содержащей символы в диапазоне 0x17–0xFF, имеет вероятность 0,000081, чтобы быть действительным UTF-8 (вероятность тем ниже, чем длиннее последовательность, а также меньше для фактического текста).

Свойства 1 и 2 важны для обеспечения совместимости с нашим существующим тяжелым программным обеспечением ASCII. Например. компилятор C обычно знает только об ASCII, но поскольку строки и комментарии обрабатываются как потоки байтов, мы можем использовать UTF-8 для всего нашего источника и помещать символы, отличные от ASCII, как в наши строки, так и в комментарии.

Свойство 3 оказалось привлекательным, потому что оно означает, что мы можем эвристически распознать UTF-8 с почти 100% уверенностью, проверив, действителен ли файл. Некоторое программное обеспечение считает хорошей идеей встраивать спецификацию (метку порядка байтов) в начало файла UTF-8, но это не так, потому что файл уже может быть распознан, а размещение спецификации в начале файла означает размещение трех байтов в начале файла, чего программа, использующая файл, может не ожидать (например, интерпретатор оболочки ищет #! как первые два байта исполняемого файла).

Обслуживание HTML как UTF-8

Больше всего я слышу, что некоторые браузеры не поддерживают UTF-8. Это неверно (поскольку по крайней мере версия IE / NS 4), но вам необходимо включить кодировку в заголовки HTTP-ответа. Если вы используете apache и кодировка по умолчанию не установлена ​​на UTF-8, вы можете добавить в файл .htaccess следующую строку:

  AddDefaultCharset utf-8
  

Вы также можете установить его для определенных расширений, например:

  AddCharset utf-8.txt .html
  

Получение пользовательских данных как UTF-8

Если вы принимаете данные от пользователя через HTML-форму, вы должны добавить accept-charset = "utf-8" в элемент формы, например:

  

Это гарантирует, что данные будут отправлены как UTF-8, и нет, , вы не можете полагаться на кодировку, если не предоставите это ! Вы также не можете рассчитывать на то, что все пользователи ограничат использование символов подмножеством ASCII, которое является общим для большинства кодировок.

LaTeX

Чтобы LaTeX интерпретировал ваш документ как UTF-8, добавьте это вверху:

  \ usepackage [utf8] {inputenc}
  

Терминал

По умолчанию Terminal.app уже должен быть настроен на использование UTF-8 (Настройки окна → Дисплей). Поскольку HFS + использует UTF-8 для имен файлов, это имеет смысл не только в том, чтобы иметь возможность cat и grep файлов в UTF-8, но ls также будет возвращать данные в UTF-8 (поскольку он сбрасывает имена файловых систем).

В дополнение к настройкам отображения вы также должны добавить в свой профиль следующую строку (например, ~ / .bash_profile для пользователей bash):

  экспорт LC_CTYPE = en_US.UTF-8
  

Фактически, без него Subversion не сможет работать для репозиториев, которые используют символы, отличные от ASCII (когда он перекодирует имена файлов в локальной системе).

Другие программы также используют переменную, например vim будет интерпретировать только многобайтовые последовательности UTF-8 правильно с набором переменных.

Преобразование между кодировками

Если вам нужно преобразовать между кодировками, вы можете использовать iconv , например:

  ls | iconv -f utf-8 -t ucs-2 | xxd
  

Преобразует результат из ls в ucs-2 (16-битный юникод) и сделает его шестнадцатеричный дамп. iconv имеет функцию транслитерации, если вам нужно использовать кодировку с потерями, например:

  echo «это хорошо…» | iconv -f utf-8 -t ASCII // TRANSLIT
  

выведет

  "это хорошо... "
  

Общий Советы по OS X

Плагин для многострочного кодека | Ссылка Logstash [7.14]

кодировка

строка, одна из [«ASCII-8BIT», «UTF-8», «US-ASCII», «Big5», «Big5-HKSCS», «Big5-UAO», «CP949», «Emacs-Mule »,« EUC-JP »,« EUC-KR »,« EUC-TW »,« GB2312 »,« GB18030 »,« GBK »,« ISO-8859-1 »,« ISO-8859-2 »,« ISO -8859-3 "," ISO-8859-4 "," ISO-8859-5 "," ISO-8859-6 "," ISO-8859-7 "," ISO-8859-8 "," ISO-8859 -9 "," ISO-8859-10 "," ISO-8859-11 "," ISO-8859-13 "," ISO-8859-14 "," ISO-8859-15 "," ISO-8859-16 »,« KOI8-R »,« KOI8-U »,« Shift_JIS »,« UTF-16BE »,« UTF-16LE »,« UTF-32BE »,« UTF-32LE »,« Windows-31J »,« Windows -1250 "," Windows-1251 "," Windows-1252 "," IBM437 "," IBM737 "," IBM775 "," CP850 "," IBM852 "," CP852 "," IBM855 "," CP855 "," IBM857 "," IBM860 "," IBM861 "," IBM862 "," IBM863 "," IBM864 "," IBM865 "," IBM866 "," IBM869 "," Windows-1258 "," GB1988 "," macCentEuro "," макрохорватский " "," macCyrillic "," macGreek "," macIceland "," macRoman "," macRomania "," macThai "," macTurkish "," macUkraine "," CP950 "," CP951 "," IBM037 "," stateless-ISO -2022-JP "," eucJP-ms "," CP51932 "," EUC-JIS-2004 "," GB12345 "," ISO-2022-JP "," ISO-20 22-JP-2 »,« CP50220 »,« CP50221 »,« Windows-1256 »,« Windows-1253 »,« Windows-1255 »,« Windows-1254 »,« TIS-620 »,« Windows-874 » , «Windows-1257», «MacJapanese», «UTF-7», «UTF8-MAC», «UTF-16», «UTF-32», «UTF8-DoCoMo», «SJIS-DoCoMo», «UTF8- KDDI »,« SJIS-KDDI »,« ISO-2022-JP-KDDI »,« stateless-ISO-2022-JP-KDDI »,« UTF8-SoftBank »,« SJIS-SoftBank »,« BINARY »,« CP437 » , "CP737", "CP775", "IBM850", "CP857", "CP860", "CP861", "CP862", "CP863", "CP864", "CP865", "CP866", "CP869", " CP1258 »,« Big5-HKSCS: 2008 »,« ebcdic-cp-us »,« eucJP »,« euc-jp-ms »,« EUC-JISX0213 »,« eucKR »,« eucTW »,« EUC-CN » , «eucCN», «CP936», «ISO2022-JP», «ISO2022-JP2», «ISO8859-1», «ISO8859-2», «ISO8859-3», «ISO8859-4», «ISO8859-5» , «ISO8859-6», «CP1256», «ISO8859-7», «CP1253», «ISO8859-8», «CP1255», «ISO8859-9», «CP1254», «ISO8859-10», «ISO8859- 11 "," CP874 "," ISO8859-13 "," CP1257 "," ISO8859-14 "," ISO8859-15 "," ISO8859-16 "," CP878 "," MacJapan "," ASCII "," ANSI_X3.4-1968 "," 646 "," CP65000 "," CP65001 "," UTF-8-MAC "," UTF-8-HFS "," UCS-2BE "," UCS-4BE "," UCS-4LE " , "CP932", "csWindows31J", "SJIS", "PCK", "CP1250", "CP1251", "CP1252", "external", "locale"]

mod_rewrite и специальные символы (%) — Конфигурация сервера — Форумы SitePoint

меее,

Извините за задержку, я потерял модем ADSL по ошибке.

Язык определяется не местом расположения сервера, а выбранными языками.Хотя я не использую языки на своем тестовом сервере, его файл httpd-languages.conf (по умолчанию):

AddLanguage ca .ca
AddLanguage cs .cz .cs
AddLanguage da .dk
AddLanguage de .de
AddLanguage el .el
AddLanguage en .en
AddLanguage eo .eo
AddLanguage es .es
AddLanguage et .et
AddLanguage es .es
AddLanguage et .et
AddLanguage ru .fr
AddLanguage он .he
AddLanguage hr .hr
AddLanguage it .it
AddLanguage ja.ja
AddLanguage ko .ko
AddLanguage ltz .ltz
AddLanguage nl .nl
AddLanguage nn .nn
AddLanguage no .no
AddLanguage pl .po
AddLanguage pt .pt
AddLanguage pt-BR .pt-br
AddLanguage ru.
AddLanguage sv .sv
AddLanguage tr .tr
AddLanguage zh-CN .zh-cn
AddLanguage zh-TW .zh-tw

LanguagePriority en ca cs da de el eo es et fr he hr it ja ko ltz nl nn no pl pt pt-BR ru sv tr zh-CN zh-TW

ForceLanguagePriority Prefer Fallback

AddCharset us-ascii.ascii .us-ascii
AddCharset ISO-8859-1 .iso8859-1 .latin1
AddCharset ISO-8859-2 .iso8859-2 .latin2 .cen
AddCharset ISO-8859-3 .iso8859-3 .latin3
AddCharset ISO- 8859-4 .iso8859-4 .latin4
AddCharset ISO-8859-5 .iso8859-5 .cyr .iso-ru
AddCharset ISO-8859-6 .iso8859-6 .arb .arabic
AddCharset ISO-8859-7 .iso8859 -7 .grk .greek
AddCharset ISO-8859-8 .iso8859-8 .heb .hebrew
AddCharset ISO-8859-9 .iso8859-9 .latin5 .trk
AddCharset ISO-8859-10.iso8859-10 .latin6
AddCharset ISO-8859-13 .iso8859-13
AddCharset ISO-8859-14 .iso8859-14 .latin8
AddCharset ISO-8859-15 .iso8859-15 .latin9
AddCharset ISO-8859-16. iso8859-16 .latin10
AddCharset ISO-2022-JP .iso2022-jp .jis
AddCharset ISO-2022-KR .iso2022-kr .kis
AddCharset ISO-2022-CN .iso2022-cn .cis
AddCharset Big5.Big5. big5 .b5
AddCharset cn-Big5 .cn-big5

AddCharset WINDOWS-1251 .cp-1251 .win-1251
AddCharset CP866.cp866
AddCharset KOI8 .koi8
AddCharset KOI8-E .koi8-e
AddCharset KOI8-r .koi8-r .koi8-ru
AddCharset KOI8-U .koi8-u
AddCharset KOI8-ru. ISO-10646-UCS-2 .ucs2
AddCharset ISO-10646-UCS-4 .ucs4
AddCharset UTF-7 .utf7
AddCharset UTF-8 .utf8
AddCharset UTF-16 .utf16
AddCharset UTF-16be69 AddCharset UTF-16be69. UTF-16LE .utf16le
AddCharset UTF-32 .utf32
AddCharset UTF-32BE .utf32be
AddCharset UTF-32LE.utf32le
AddCharset euc-cn .euc-cn
AddCharset euc-gb .euc-gb
AddCharset euc-jp .euc-jp
AddCharset euc-kr .euc-kr
# Не уверен, как euc-tw попал — IANA не не перечислить ???
AddCharset EUC-TW .euc-tw
AddCharset gb2312 .gb2312 .gb
AddCharset iso-10646-ucs-2 .ucs-2 .iso-10646-ucs-2
AddCharset iso-10646-ucs-4 .ucs-4 .iso-10646-ucs-4
AddCharset shift_jis .shift_jis .sjis

Если вашего языка там нет, значит, он не с этой планеты!

[QUOTE = meee; 4694839] dklynn проблема в том, что у меня хостинг в стране, где используются латинские символы, я не верю, что Apache настроен на распознавание языка моего веб-сайта.

Гудоня! Ваш метод использования articleId — отличный способ решить проблему использования нелатинских символов в названиях статей. Я ПРЕДПОЧИТАЮ использовать заголовок — даже на других языках — но вам необходимо (а) иметь ваш язык, доступный на сервере и (б) иметь возможность указывать диапазон символов ваших символов (используйте шестнадцатеричные значения символов для определения начальный и конечный символы, но ИСПОЛЬЗУЙТЕ ЭТИ СИМВОЛЫ в определении диапазона символов!).

С уважением,

DK

Htaccess (การ เข้ารหัส): การ ตั้ง ค่า ตัวอย่าง การ ใช้ งาน

ทุก คน ท่อง อินเทอร์เน็ต, พบ ว่า ตัว เอง อยู่ เว็บ และ เว็บไซต์ ดัง กล่าว ที่ แสดง ไม่ ถูก ต้อง ตัวอย่าง เช่น โดย การ เปิด ไซต์ จะ เห็น ความ หลากหลาย ของ การ เขียน แทนที่จะ เป็น ข้อความ ที่ แยกแยะ คุณ รูป อักษร อียิปต์ โบราณ สัญลักษณ์ และ สัญลักษณ์ อื่น ๆ ได้ คล้าย กัน มาก ที่สุด เมื่อ ไป ที่ จีน หรือ ภาษา ญี่ปุ่น ทั้งหมด นี้ เกิด จาก ที่ มี การ ใช้ การ ตั้ง อื่น ๆ ใน ไฟล์.htaccess การ เข้ารหัส ใน ประเทศ เหล่า นี้ ต่าง กัน มี การ กำหนด ค่า อย่าง ถูก ต้อง จะ หลีก เลี่ยง สัญลักษณ์ ที่ ไม่ สามารถ เข้าใจ ได้ เว็บไซต์

การ เข้ารหัส คือ อะไร?

สำหรับ เว็บไซต์ มี การ เข้ารหัส ขั้น พื้นฐาน ที่ เรียก Charset เริ่ม ต้น มี อยู่ ใน ไฟล์. htaccess การ เข้ารหัส เป็น สิ่ง ที่ จำเป็น กำหนด กฎ ตาม ที่ อักขระ จะ ถูก ค่า โค้ด

สอง ทศวรรษ ที่ ผ่าน การ เข้ารหัส ได้ ค่อนข้าง เล็ก มี เจ็ด ตัวอย่าง เช่น ASC เขา มี จำนวน มาก ใน หมู่ พวก นิยม มาก utf-8, Windows-1251

บรรทัด ล่าง คือ เอกสาร ที่ มี การ เข้ารหัส ที่ แตก จะ ดู แตก ต่าง ข้อ ผิด พลาด จึง บน หน้า ของ ไซต์ เบ รา เซอร์ ของ ผู้ ใช้ สามารถ กำหนด ค่า สำหรับ เข้ารหัส หนึ่ง ชนิด และ ไฟล์.htaccess บน เซิร์ฟเวอร์ จะ มี อีก อัน เป็น ผล บน หน้า เว็บ กลาย เป็น ชุด ของ ยาก

การ เข้ารหัส พื้นฐาน

ใน htaccess คุณ สามารถ ระบุ เข้ารหัส หลัก คุณ สามารถ ลง ทะเบียน การ เข้ารหัส อื่น ๆ ช่วย ให้ สามารถ แสดง ผล ได้ อย่าง ถูก ต้อง ใน ของ เว็บไซต์ นัก พัฒนา เว็บ ใน. Кодировка htaccess มัก จะ ระบุ ไว้ ใน สอง ประเภท คือ utf-8 และ Windows-1251 โดย ค่า เริ่ม ต้น โดย เบ รา ว์ เซอร์ และ บรรณาธิการ จำนวน มาก

เพื่อ หลีก เลี่ยง ของ เกล็ด นั่นเอง จำเป็น ต้อง ตั้ง ค่า การ เข้ารหัส หลัก ของ ไซต์ โดย ใช้ Кодировка по умолчанию และ ใน.htaccess เพื่อ ไม่ ให้ มี การ แปลง ไฟล์ หรือ เข้ารหัส ที่ จำเป็น ทั้งหมด เพราะ ปัญหา หลัก เช่น ผู้ ใช้ สามารถ ข้อมูล บาง ส่วน เข้ารหัส ที่ แตก ต่าง กัน ซึ่ง อ่าน ได้ การ การ เตือน ล่วงหน้า

วิธี ตั้ง ค่า การ เข้ารหัส ไซต์ ใน ไฟล์. htaccess

การ เข้ารหัส Кодировка เริ่ม ต้น ซึ่ง เป็น คีย์, ที่ ประมวล ผล โดย เซิร์ฟเวอร์ ตาม ค่า ไป ยัง เบ รา เซอร์ ระบุ โดย ใช้ ตัว เลือก AddDefaultCharset จำเป็น ต้อง ค่า การ จะ ถูก กำหนด ให้ กับ พวก เขา ซึ่ง จะ บอก เบ สิ่ง ที่ เข้ารหัส ตัว อักษร ทั้งหมด ใน ได้ รับ การ พิจารณา นั่น คือ เหตุผล ที่ ใน ส่วน Content-Type คุณ จำเป็น ต้อง ระบุ การ นี่ คือ การ ตั้ง ค่า .htaccess

ตัว เลือก ข้าง ต้น เป็น สิ่ง สั่ง สำหรับ การ กำหนด ค่า การ เข้ารหัส ใน ไฟล์ คำ สั่ง นี้ สามารถ แก้ไข ปัญหา กับ ได้ ใน ที่สุด โดย ที่ รู้จัก สำหรับ ไม่ จำเป็น ต้อง ใช้ หาก คุณ ไม่ ได้ ระบุ พารามิเตอร์ เบ เซอร์ จะ โยน ข้อ ผิด พลาด มิ ทั้งหมด จะ ถูก ปรับ แต่ง โดย อัตโนมัติ ควร เบ รา เซอร์ บาง ประเภท ไม่ เห็น ใน ลักษณะ เดียวกัน ด้วย จึง จะ ใช้ utf-8 และ Windows-1251 ที่ มี ชื่อเสียง มาก รู้จัก เบ รา ว์ เซอร์ ทั้งหมด

จาก ปัญหา การ เข้ารหัส ที่ คุณ สามารถ กำจัด ได้ ใช้ งาน การ แปลง เอกสาร อัตโนมัติ CharsetSourceEnc จะ ไฟล์.htaccess หลังจาก นั้น คุณ ต้อง เขียน ชุด อักขระ ทั้งหมด จะ ถูก перекодировано ลง ใน นั้น ถ้า หรือ อย่าง อื่น คุณ ต้อง ลบ การ รหัส คุณ ควร เขียน คำ สั่ง CharserDisable On ใน ไฟล์

9000 ของ ไซต์

นี้ ไม่ ได้ เกิด ขึ้น บ่อย ครั้ง ก็ มี ความ ต้องการ หนึ่ง หน้า ส่วน ทั้งหมด ของ ส่วน ที่ จะ แสดง ใน ภาษา ดังนั้น เรา จำเป็น ต้อง เข้ารหัส อีก หาก คุณ พบ ไฟล์. htaccess พร้อม ด้วย การ เข้ารหัส ที่ ระบุ ใน ไดเร็กทอรี เว็บ ทั้งหมด ของ ไซต์ จะ ปรากฏ ใน ไฟล์ ผล ที่ ได้ อาจ เป็น ได้ ก็ คือ คน ไป ที่ ส่วน ต่าง ประเทศ ของ เว็บไซต์ ภาษา ที่ สัญลักษณ์ สัญลักษณ์ แปลก ๆ

เพื่อ ให้ เข้าใจ ถึง ปัญหา กำหนด ค่า เพิ่มเติม htaccess จำเป็น ต้อง สร้าง หนึ่ง ไฟล์ และ เพิ่ม คำ สั่ง AddType ใน ไฟล์ ซึ่ง ระบุ การ เข้ารหัส เพิ่มเติม งาน ได้ อยู่ กับ ตำแหน่ง ของ ไฟล์.htaccess หาก คุณ วาง ไว้ ภายใน โฟลเดอร์ ที่ มี เว็บไซต์ เฉพาะ การ กำหนด ค่า จะ ทำงาน เฉพาะ ส่วน นี้ เท่านั้น ส่วน เหลือ จะ ทำงาน ตาม กฎ ของ. htaccess แรก ซึ่ง อยู่ ใน ไดเร็กทอรี ราก ของ ไซต์

เปลี่ยน เส้นทาง ด้วย. htaccess

นัก พัฒนา ซอฟต์แวร์ จำนวน มาก ต้อง ปัญหา ดัง กล่าว สถานการณ์ เมื่อ เปลี่ยน โครงการ อยู่ คุณ ต้อง เก็บ ที่ อยู่ เดิม ของ โดย เฉพาะ อย่าง ยิ่ง มัก เกิด เมื่อ จัดการ เนื้อหา ที่ ขึ้น ที่ เว็บไซต์ แรก คง ที่ และ ไม่มี ดูแล เกี่ยว กับ ความ สมเหตุสมผล ของ ที่ เปลี่ยน เส้นทาง (.htaccess ต้องการ การ เปลี่ยนแปลง)

จำเป็น ต้อง มี การ เปลี่ยน เส้นทาง หาก ผู้ ดูแล ระบบ ต้องการ หน้า เว็บไซต์ ใน เครื่องมือ ค้นหา หลังจาก ที่ ทุก คะแนน ตั้งแต่ เริ่ม ต้น เป็น เรื่อง ยาก

สิ่ง ที่ จำเป็น ? ควร ใช้. htaccess ใน การ โฮสต์ การ เปลี่ยน เส้นทาง ใน ใช้ ตัว เลือก Перенаправление 301 หลังจาก ที่ ระบุ ที่ อยู่ ของ หน้าที่ ใหม่ แล้ว

การ เข้าถึง ที่ จำกัด

เพื่อ จำกัด เว็บไซต์ ทั้งหมด ส่วน หรือ .htaccess ด้วย เช่น กัน การ เข้าถึง ถูก ห้าม ที่ สามารถ ทำให้ เสีย บาง สิ่ง บาง สามารถ เข้าถึง ไฟล์ ได้

คำ สั่ง ต่อ ไป นี้ ใช้:

  • หาก ต้องการ ปฏิเสธ การ เข้าถึง ไซต์ ไฟล์ จาก ทั้งหมด จะ ถูก กำหนด
  • หาก ต้องการ ปฏิเสธ การ จาก ip แอดเดรส เฉพาะ ให้ ใช้ คำ deny from ip_address_user command

การ ป้องกัน ไฟล์

น่า จะ เป็น ที่ ใช้ แต่ละ คน ได้ บทความ ใน เว็บไซต์ ต่างๆ บ่อย ครั้ง ที่ มัน เกิด ขึ้น ว่า พวก เพียง การ ขโมย จาก แหล่ง ข้อมูล อื่น เครื่องมือ ค้นหา กำลัง ดิ้นรน กับ ปรากฏการณ์ ดัง กล่าว แบบ การ ทำ สำเนา แต่ ครั้ง ไม่ค่อย โปรแกรมเมอร์ นี่ เป็น ปัญหา ที่ ร้ายแรง มาก อย่างไรก็ตาม เพื่อ ที่ ที่ มี คุณภาพ ต้อง ใช้ เวลา และ เป็น อย่าง มาก จาก นั้น เครื่องมือ ค้นหา จะ ลงโทษ สำหรับ เนื้อหา ที่ คัด ลอก นี้ ประสงค์ ข้อความ ขโมย ใน กรณี นี้ จำนวน มาก เช่น โจร ไม่ ดาวน์โหลด ภาพ จาก ข้อมูล ต่าง ประเทศ เพื่อ ให้ เกิน เซิร์ฟเวอร์ ขอ ง พวก เขา พวก เขา เพียง แค่ ระบุ ระบุ การ เชื่อม โยง ภาพ จาก แหล่ง ที่ มา การ แทรก กล่าว เรียก ว่า hotlink นอกเหนือ จาก ลิงก์ ไป แล้ว คุณ สามารถ แทรก ไฟล์ เหล่า นี้ ที่ ไฟล์ ที่ สามารถ สำหรับ เนื้อหา ปรากฏการณ์ นี้ เป็น ที่ ไม่ พึง เซิร์ฟเวอร์ ของ แหล่ง มี การ โหลด มาก เกินไป เนื่องจาก มี

ใน ไฟล์ htaccess คุณ สามารถ ระบุ ไฟล์ ได้ รับ การ ป้องกัน จาก хотлинк ระบุ ส่วน ขยาย ที่ การ เข้าถึง โรงแรม หรือ ทั้ง กลุ่ม คุณ สามารถ ตั้ง รหัส ผ่าน ไฟล์.

Оставить комментарий

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *