Разработчики Mozilla выпустили (https://developer.mozilla.org/devnews/index.php/2010/10/19/f.../) очередные корректирующие релизы для поддерживаемых веток web-браузера Firefox - 3.6.11 и 3.5.14. В представленном обновлении устранено 10 уязвимостей (http://www.mozilla.org/security/known-vulnerabilities/firefo...), из которых 6 имеют статус критических, а две уязвимости помечены как опасные. Дополнительно в версии Firefox 3.6.11 исправлено 40 ошибок (из которых 6 приводят к краху), а в версии 3.5.14 - 23 (https://bugzilla.mozilla.org/buglist.cgi?quicksearch=ALL...). Выпуск обновления web-браузера SeaMonkey 2.0.9 (http://www.seamonkey-project.org/news) ожидается в ближайшие дни.
Из исправленных критических проблем безопасности можно отметить:- "MFSA 2010-64 (http://www.mozilla.org/security/announce/2010/mfsa2010-64.html)" - устранены 3 ошибки (две в Firefox 3.6 и три в 3.5), связанн...
URL: https://developer.mozilla.org/devnews/index.php/2010/10/19/f.../
Новость: http://www.opennet.me/opennews/art.shtml?num=28352
Это всё хорошо, но кто объяснит, почему до сих пор FF копирует русские адреса из строки адреса в виде %aa%bb%cc ? :) Насколько я знаю, больше так никто не делает, и это удобно.
Меня тоже жутко раздражают эти проценты вместо русских букв, но вроде как исправлять это никто и не собирается.
> Меня тоже жутко раздражают эти проценты вместо русских букв, но вроде как
> исправлять это никто и не собирается.А как вы собирайтесь ссылку с неэкранированными символами делать, если вам нужно ссылку передать или вставить куда-то ? Вручную все русские буквы экранировать ?
>А как вы собирайтесь ссылку с неэкранированными символами делать, если вам нужно ссылку
>передать или вставить куда-то ? Вручную все русские буквы экранировать ?Согласно RFC, перед отправкой URL-a, программа-клиент ОБЯЗАНА экранировать все неподдерживаемые символы. Если ты вставляешь куда-то http://ru.wikipedia.org/Ссылка, а программа не экранирует этот URL перед отправкой, то это программа нарушает RFC, и её в инет вообще нельзя пускать.
> символы. Если ты вставляешь куда-то http://ru.wikipedia.org/Ссылка, а программа не экранирует
> этот URL перед отправкой, то это программа нарушает RFC, и её
> в инет вообще нельзя пускать.Если текст вставляется в поле с URL, подразумевается, что вбивается уже соответствующий RFC URL и никакая программа не должна ничего экранировать, иначе экранирует и & и ? и %.
Если вбиваешь в web-форме в окне браузера, например, в текстовом поле с комментарием в форуме, то URL тоже изначально должен соответствовать RFC, так как иначе придется экранировать и русские буквы в тексте.
>Если текст вставляется в поле с URL, подразумевается, что вбивается уже соответствующий
>RFC URL и никакая программа не должна ничего экранировать, иначе экранирует и & и ? и %.RFC на содержимое полей URL нет ;) Более того, во всех браузерах именно что НЕ "подразумевается, что вбивается уже соответствующий RFC URL". Любой URL перед отправкой на сервер должен быть экранирован, это абсолютно не зависит от каких-то полей ввода, которые что-то там подразумевают.
>>Если вбиваешь в web-форме в окне браузера, например, в текстовом поле с комментарием в форуме, то URL тоже изначально должен соответствовать RFC, так как иначе придется экранировать и русские буквы в тексте.
Нет, не значит. Почему? Потому опять что есть RFC: любой URL перед отправкой на сервер должен быть экранирован. Если я щёлкаю по ссылке в чьё-либо комментарии, браузер ОБЯЗАН экранировать его сам перед отправкой.
>>Если текст вставляется в поле с URL, подразумевается, что вбивается уже соответствующий
>>RFC URL и никакая программа не должна ничего экранировать, иначе экранирует и & и ? и %.
> RFC на содержимое полей URL нет ;)URL Encoding RFC 1738
"...Only alphanumerics [0-9a-zA-Z], the special characters "$-_.+!*'()," [not including the quotes - ed], and reserved characters used for their reserved purposes may be used unencoded within a URL."Как видно при записи URL никаких русских букв в нем быть не должно.
> Более того, во всех браузерах именно что НЕ "подразумевается, что вбивается уже соответствующий RFC URL".
> Любой URL перед отправкой на сервер должен быть экранирован, это абсолютно не
> зависит от каких-то полей ввода, которые что-то там подразумевают.Какая разница что при передаче осуществляется обязательное кодирование, речь о том, что скопированный без экранирования русских букв URL будет в итоге невалидным.
Поясняю на пальцах:
1. вы сохранили в форме "тест http://site/т ест"
на сервер он ушел как "%f2%e5%f1%f2 http://site/%f2%20%e5%f1%f2", скрипт на сервере его декодировал и сохранил как "тест http://site/т ест", в итоге ссылка сохранена некорректная, никаких русских букв и пробелов в тексте быть не должно.2. вы сохранили в форме "тест http://site/%f2%20%e5%f1%f2", именно так как сайчас помещает ссылки Firefox и чем недоволен оппонент в обсуждении. На сервер он ушел как "%f2%e5%f1%f2 http://site/%25f2%2520%25e5%25f1%25..., скрипт на сервере его декодировал и сохранил как "тест http://site/%f2%20%e5%f1%f2", в итоге ссылка сохранена верно.
> Нет, не значит. Почему? Потому опять что есть RFC: любой URL перед
> отправкой на сервер должен быть экранирован. Если я щёлкаю по ссылке
> в чьё-либо комментарии, браузер ОБЯЗАН экранировать его сам перед отправкой.Ему про Фому,a он про Ерёму
>>1. вы сохранили в форме "тест http://site/т ест"
>>2. вы сохранили в форме "тест http://site/%f2%20%e5%f1%f2",какой URL хранится где внутри какой-то базы не имеет никакого значения. Он может быть и валидным с точки зрения RFC, может и нет. Это ни на что не влияет, совсем. Браузер перейдёт по обоим из них. Храните хоть в виде ASCII-арта.
> Меня тоже жутко раздражают эти проценты вместо русских букв, но вроде как
> исправлять это никто и не собирается.Копируйте часть URL, например, без http:// и тогда русские буквы останутся русскими буквами.
http://juick.com/avr/469733
> Это всё хорошо, но кто объяснит, почему до сих пор FF копирует
> русские адреса из строки адреса в виде %aa%bb%cc ? :) Насколько
> я знаю, больше так никто не делает, и это удобно.Когда выделяется весь адрес копируется %xx в предположении что в дальнейшем ссылку планируется куда-то вставить. Когда копируется часть URL копируется открытый текст, так как подразумевается, что пользователь хочет скопировать какие-то ключевые слова.
network.standard-url.encode-utf8
>network.standard-url.encode-utf8установил в false, URL-ы копируются всё равно с %aa%bb. Iceweasel 3.6.10
> network.standard-url.encode-utf8похоже в 3.6.x за это отвечает опция network.standard-url.escape-utf8
Вы правда думаете, что разработчики FF используют OpenNet как issue tracker вместо https://bugzilla.mozilla.org/ ?
а в линуксе эти уязвимости не работали. пользуйтесь линуксом, там вообще не работают
> пользуйтесь линуксом, там вообще не работаютИменно! В линуксе не работают.
нет не работают.