Leopoldus
|
User
|
|
|
Зарегистр: 20/06/2004
|
Сообщений: 104
|
|
|
как открыть обычный HTML c необычным расширением?
06/08/2007 19:50
[post link]
|
Напомнить
Правка
|
Сообщить
Ответ
|
|
|
Вот такая странная (а может, и не странная?) картина: при попытке открыть с локального диска в Опере 9.22 некоторые (не все!) более или менее обычные HTML-документы с нестандартным расширением вроде HTML-doc.aaa Опера выдает стандартный запрос "Download file" на сохранение или открытие. Если в ответ выбрать "Open", то Опера пытается его открыть ассоциированной программой - и, естественно, сообщает, что "Could not start application" (поскольку с данным расширением в системе не ассоциировано никаких приложений). Если же изменить настройки для данного типа файлов и вместо "Show download dialog" указать "Open with Opera", то Опера таки открывает этот документ - но почему-то как plain text.
Какие свойства документов могут влиять на такое поведение Оперы?
|
amr_now
|
Operaman
|
|
|
Зарегистр: 18/05/2006
|
Сообщений: 1488
|
|
|
Re: как открыть обычный HTML c необычным расширением?
07/08/2007 05:05
[Re: Leopoldus]
[post link]
|
Напомнить
Правка
|
Сообщить
Ответ
|
|
|
Leopoldus Официально за это отвечает opera:config|UserPrefs|TrustServerTypes Доверять MIME-типам получаемым с сервера, но недоработка Opera заключается в том, что она практически всегда доверяет им, не определяя автоматически по содержимому файла. Можно поиграться с этим параметром, если что изменится, напиши плиз.
|
Leopoldus
|
User
|
|
|
Зарегистр: 20/06/2004
|
Сообщений: 104
|
|
|
Re: как открыть обычный HTML c необычным расширением?
07/08/2007 05:57
[Re: amr_now]
[post link]
|
Напомнить
Правка
|
Сообщить
Ответ
|
|
|
amr_now
Что-то подобное и мне приходило в голову (особенно после чтения топиков по схожим темам на этом форуме). Но ЧТО именно Опера считает "MIME-типом файла, полученным с сервера" в случае открытия файла с локального диска?
И почему Опера не может правильно определить MIME-тип именно этих HTML-документов, а других определяет без проблем?
Кстати, в заголовках четко прописано:
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=windows-1252">.
Исправлено Leopoldus (07/08/2007 06:01)
|
amr_now
|
Operaman
|
|
|
Зарегистр: 18/05/2006
|
Сообщений: 1488
|
|
|
Re: как открыть обычный HTML c необычным расширением?
07/08/2007 06:24
[Re: Leopoldus]
[post link]
|
Напомнить
Правка
|
Сообщить
Ответ
|
|
|
Leopoldus Это находится в тексте файла, значит не происходит автоматического определения <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=windows-1252"> Наверное, Ilya может уточнить ситуацию.
|
Ilya
|
Admin
|
|
|
Зарегистр: 15/04/2003
|
Сообщений: 4260
|
Из: Санкт-Петербург
|
|
Re: как открыть обычный HTML c необычным расширением?
07/08/2007 18:51
[Re: amr_now]
[post link]
|
Напомнить
Правка
|
Сообщить
Ответ
|
|
|
Парни, мыслите логически.
Если расширение файла НЕ HTML, то как браузер узнает, что это HTML? То, что написано в теле файла (<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=windows-1252">) браузер не может прочитать, т.к. ещё не знает, каким приложением открывать файл. Если же вы его (браузер) насильно пытаетесь заставить прочитать файл, он его и читает как текст.
|
amr_now
|
Operaman
|
|
|
Зарегистр: 18/05/2006
|
Сообщений: 1488
|
|
|
Re: как открыть обычный HTML c необычным расширением?
07/08/2007 19:20
[Re: Ilya]
[post link]
|
Напомнить
Правка
|
Сообщить
Ответ
|
|
|
Ilya
поэтому и нужно автоматическое разпознавание содержимого файла - если НЕ доверять MIME-типу сервера.
---
Заодно уж напишу про извращение - зачем создавать пустую страницу для скачиваемого бинарного файла?
Это просто ни в какие ворота не лезет, уж прошу прощения.
При следующем запуске Оперы опять скачивается этот же файл - это помимо неприятности тупо закрывать пустую вкладку.
Исправлено amr_now (07/08/2007 19:40)
|
Ilya
|
Admin
|
|
|
Зарегистр: 15/04/2003
|
Сообщений: 4260
|
Из: Санкт-Петербург
|
|
Re: как открыть обычный HTML c необычным расширением?
07/08/2007 20:28
[Re: amr_now]
[post link]
|
Напомнить
Правка
|
Сообщить
Ответ
|
|
|
Я сейчас даже и не припомню, есть ли программа, которая автоматически распознаёт файл без расширения. Максимум, с чем сталкивался - принудительное открытие неизвестного файла программой. Но тогда она просто автоматом пытается обработать файл, как файл своего привычного формата. Допустим, сделают норвежцы в этом случае принудительную обработку неизвестных файлов, как html. И что это даст? По-моему - ничего.
По поводу страницы. Если вы кликаете по ссылке, то Opera и открывает новую вкладку для этой ссылки. После этого начинает обрабатывать содержимое ссылки в соответствии с расширением файла. Я давно привык использовать контекстное меню "сохранить содержимое как".
|
amr_now
|
Operaman
|
|
|
Зарегистр: 18/05/2006
|
Сообщений: 1488
|
|
|
Re: как открыть обычный HTML c необычным расширением?
07/08/2007 20:59
[Re: Ilya]
[post link]
|
Напомнить
Правка
|
Сообщить
Ответ
|
|
|
Ilya Принудительное распознавание содержимого файлов давно уже существует в браузерах.
В ответ на: Я давно привык использовать контекстное меню "сохранить содержимое как
Естественно, все пользователи Оперы привыкли, но это не значит, что это хорошо. Человек должен тянуться к прекрасному.
|
Leopoldus
|
User
|
|
|
Зарегистр: 20/06/2004
|
Сообщений: 104
|
|
|
Re: как открыть обычный HTML c необычным расширением?
07/08/2007 21:06
[Re: Ilya]
[post link]
|
Напомнить
Правка
|
Сообщить
Ответ
|
|
|
IlyaВ ответ на: Парни, мыслите логически.
Если расширение файла НЕ HTML, то как браузер узнает, что это HTML?
..........
Я сейчас даже и не припомню, есть ли программа, которая автоматически распознаёт файл без расширения.
Есть такая программа! Она называется Opera!
В отличие от корифеев, я не очень хорошо представляю, как все эти механизмы работают, поэтому могу опираться только на собственный опыт пользователя (не слишком богатый).
Как я уже писАл в первом своем посте, неизвестное расширение мешает Опере правильно распознать только некоторые HTML-документы. В порядке эксперимента я давал разным докуменам HTML одно и то же простое имя с заведомо неизвестным системе расширением: AAA.aaa и пробовал открыть их в Опере. Эти файлы обрабатывались по-разному в зависимости от содержимого: большинство открывалось корректно, а с меньшинством происходили заморочки, описанные мною выше.
И этот факт, как мне кажется, не согласуется с утверждением уважаемого Ilya, что В ответ на: То, что написано в теле файла (<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=windows-1252">) браузер не может прочитать, т.к. ещё не знает, каким приложением открывать файл.
Исправлено Leopoldus (07/08/2007 21:09)
|
Ilya
|
Admin
|
|
|
Зарегистр: 15/04/2003
|
Сообщений: 4260
|
Из: Санкт-Петербург
|
|
Re: как открыть обычный HTML c необычным расширением?
07/08/2007 21:45
[Re: Leopoldus]
[post link]
|
Напомнить
Правка
|
Сообщить
Ответ
|
|
|
В ответ на: Эти файлы обрабатывались по-разному в зависимости от содержимого: большинство открывалось корректно, а с меньшинством происходили заморочки, описанные мною выше.
Хм... А какие отличия были в файлах?
|
Leopoldus
|
User
|
|
|
Зарегистр: 20/06/2004
|
Сообщений: 104
|
|
|
|
IlyaВ ответ на: Хм... А какие отличия были в файлах?
Это - как раз то, с чего я начал этот тред: В ответ на: Какие свойства документов могут влиять на такое поведение Оперы?
. Называется, от чего ушли, к тому и вернулись. ----- Методом научного тыка я установил, что вот наличие вот этой строки (см. вложение) препятствует нормальному открытию документа в Опере. (Разумеется, это не универсальное правило, а только частный случай.) Что именно в этой строке вгоняет Оперу в ступор - этого я не понимаю. Вложения: aa.aaa - документ HTML открывается нормально bbbb.bbbb - вместо открытия документа HTML начинаются заморочки.
|
Ilya
|
Admin
|
|
|
Зарегистр: 15/04/2003
|
Сообщений: 4260
|
Из: Санкт-Петербург
|
|
Re: как открыть обычный HTML c необычным расширением?
08/08/2007 12:36
[Re: Leopoldus]
[post link]
|
Напомнить
Правка
|
Сообщить
Ответ
|
|
|
Для начала полезная ссылка - HTML-валидатор W3C:
http://validator.w3.org/
Теперь результаты минутного исследования.
В документе ааа правильно указан DOCTYPE, а в документе bbb он не указан. Вот и вся разница.
" Line 1, Column 0: no document type declaration; implying "<!DOCTYPE HTML SYSTEM>".
The checked page did not contain a document type ("DOCTYPE") declaration. The Validator has tried to validate with a fallback DTD, but this is quite likely to be incorrect and will generate a large number of incorrect error messages. It is highly recommended that you insert the proper DOCTYPE declaration in your document -- instructions for doing this are given above -- and it is necessary to have this declaration before the page can be declared to be valid."
P.S. Граждане! Чтите уголовный кодекс... т.е., стандарты W3C. Вы не поверите, насколько легче тогда живётся и работается.
|
Leopoldus
|
User
|
|
|
Зарегистр: 20/06/2004
|
Сообщений: 104
|
|
|
|
Ilya
В ответ на: В документе ааа правильно указан DOCTYPE, а в документе bbb он не указан. Вот и вся разница.
Боюсь, что вывод несколько поспешен. Это не вся разница, это только кусочек разницы, хотя, не спорю, существенный кусочек.
Проверить мое утвержденние очень легко: попробуй открыть прилагаемый документ cccc.ccc. Это - тот же документ bbbb.bbb, соответственно, в нем тоже нет прямого указания в заголовке на тип документа, но вместо "проблемной" строки текста, которая была раньше, дана другая произвольная строка.
Вывод, думаю, очевиден: поведение Оперы при открытии документа зависит не только от расширения файла, как утверждалось чуть выше, и даже не только от заголовка документа HTML, но, как это ни странно, и от содержимого собственно документа HTML.
|
Ilya
|
Admin
|
|
|
Зарегистр: 15/04/2003
|
Сообщений: 4260
|
Из: Санкт-Петербург
|
|
Re: как открыть обычный HTML c необычным расширением?
08/08/2007 19:19
[Re: Leopoldus]
[post link]
|
Напомнить
Правка
|
Сообщить
Ответ
|
|
|
Поведение оперы зависит от того, насколько криво написан HTML-код. Если там куча нарушений стандартов W3C, то ожидать можно всего, что угодно. Не исключаю, что при желании можно поймать и такое сочетание ошибок, при котором Opera откроет документ, как HTML. Но вопрос: нафига так забивать себе мозги? Пиши страницы, проверяй валидатором, исправляй ошибки. Абсолютно все страницы, получающие "зелёную отметку" на валидаторе отлично обрабатываются в Opera.
|
Sanja_K
|
Новичок
|
|
|
Зарегистр: 19/08/2007
|
Сообщений: 13
|
Из: 39регион TILZIT
|
|
Re: как открыть обычный HTML c необычным расширением?
20/08/2007 05:52
[Re: Ilya]
[post link]
|
Напомнить
Правка
|
Сообщить
Ответ
|
|
|
Вот сайт slo.ru на нём ссылка на закачку Skype
http://download.skyp...eSetup.exe
Как заставить её exe файлы качать,а не открывать ?
Левой кнопкой мышки ?
жму левой получаю кракозяблы
Исправлено Sanja_K (20/08/2007 05:54)
|