Расширение .htm или .html - какое из них правильное, а что другое? - PullRequest
55 голосов
/ 26 сентября 2008

Когда я сохраняю файл с расширением .htm или .html, какой из них правильный и чем отличается?

Ответы [ 10 ]

68 голосов
/ 26 сентября 2008

Ни один не так, это вопрос предпочтений. Традиционно, программное обеспечение MS использует htm по умолчанию, а * nix предпочитает html.

Как указал oded ниже, традиция .htm была перенесена из win 3.xx, где расширения файлов были ограничены тремя символами.

25 голосов
/ 26 сентября 2008

В основном количество символов отличается.

". Htm" пахнет операционными системами Microsoft, в которых файловая система исторически ограничивала расширения имен файлов (часть имени файла после точки) до 3 символов.

". Html" пахнет операционными системами Un * x, у которых не было этого ограничения и которые использовались для всей серьезной работы в Интернете в то время.

Прагматически, оба эквивалентны.

Разница культурная. «.html» рассматривается некоторыми как более правильный. Те же люди склонны смотреть на операционные системы Microsoft свысока и считают «.htm» неприглядным напоминанием об их ограничениях.

14 голосов
/ 26 сентября 2008

Когда вы сохраняете файл локально, разница не имеет значения - ваша локальная система, скорее всего, будет воспринимать эти два расширения как взаимозаменяемые для загрузки вашим браузером. Причиной этого является то, что исторически системы на основе Windows использовали 3-буквенные расширения (htm), а системы на основе Unix - 4 буквы (html).

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

Единственная ситуация, в которой могут быть различия между двумя расширениями, - это имена файлов по умолчанию на сервере. Когда с сервера запрашивается URL-адрес, который не указывает имя файла, например <a href="http://www.domain.dom/dirname/" rel="noreferrer">http://www.domain.dom/dirname/</a>, сервер возвращает файл с запрошенного URL-адреса, который соответствует имени файла по умолчанию. Примеры общих имен файлов по умолчанию включают в себя «index.html», «index.htm», «default.html», «default.htm» и т. Д. Однако администратор может указать имя файла по умолчанию на сервере так, как он пожелает.

Обратите внимание, что серверы часто настраиваются с несколькими именами файлов по умолчанию.

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

5 голосов
/ 26 сентября 2008

Лично я предпочитаю .html, но, как уже говорили, оба будут работать.

Просто убедитесь, что вы используете только один. Никогда оба на одном сайте! ссылка на mypage.html отличается от ссылки на mypage.htm

4 голосов
/ 26 сентября 2008

Также обратите внимание, что как часть URI расширение файла не играет никакой роли. На самом деле, это даже не расширение файла, оно просто выглядит так. Тип ресурса, идентифицируемый URI, , а не , закодированный в его имени. Вместо этого это определяется полем заголовка HTTP Content-Type. Вполне допустимо (но, возможно, немного глупо) выдавать растровое изображение как myimage.html и, наоборот, выдавать HTML-страницу как index.png. Это также является причиной, по которой утверждается, что расширения файлов вообще не должны быть частью URI.

Сэр Тим Бернерс-Ли подробно описывает это в Гипертекстовый стиль: классные URI не меняются .

2 голосов
/ 26 сентября 2008

Я использую .htm. Я думаю, меньше печатать. Или, возможно, это мой уклон в сторону.

2 голосов
/ 26 сентября 2008

Они полностью взаимозаменяемы. Если я правильно понимаю историю, то в начале правильным расширением было .html, но когда появилась Windows 95, она могла справиться только с 3-символьными расширениями.

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

Однако есть одна проблемная область: большинству хост-серверов требуется, чтобы начальная страница по умолчанию называлась index.html, а не index.htm

1 голос
/ 26 сентября 2008

Лично я предпочитаю .html, так как имя «Язык разметки гипертекста». .htm был использован, потому что некоторые старые версии Windows не могли иметь более 3 символов в расширении имени файла

1 голос
/ 26 сентября 2008

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

http://en.wikipedia.org/wiki/Filename_extension

0 голосов
/ 05 января 2015

Оба работают одинаково, но Технический и нетехнический справочник можно найти здесь, http://www.sightspecific.com/~mosh/www_faq/ext.html

...