Среда, 13 Май 2009

nginx: $crc32_name и $md5_name

Небольшой патч (и для оригинального nginx) который добавляет переменные $crc32_name и $md5_name, в которые попадают crc32 или md5 значение переменной name.

Написано в: 16:00 | 10 комментариев | | теги: , , , , | постоянная ссылка |
Добавить пост в:   Delicious Reddit Slashdot Digg Technorati Google


Последние комментарии

Комментарии

Eonve 30.06.2009 18:25

привет
понадобился md5 для генерации ключей мемкашеда, наткнулся на твой патч попробовал — не совпадает твой md5 с теми что генерятся другими путями… посмотрел в самом нгинксе в другом месте, сделал как там:

-uint32_t hash[4];
+u_char hash[16];

ну и соответственно ниже при получении digest
так заработало…

ответить
Kirill A. Korinskiy 2.07.2009 0:51

А в чем разница, то?

ответить
Eonve 2.07.2009 14:32

разница в том, что ты похоже перепутал порядок байт при выводе интов в строку
по крайней мере, у меня получается так…

я не большой спец :-) но md5 реально был неправильный

ответить

Форма комментирования для «nginx: $crc32_name и $md5_name»

Обязательное поле. Не больше 30 символов.

Обязательное поле

Eonve 2.07.2009 14:44

чтоб не быть голословным, вот как это выглядело у меня:

2009/06/30 17:04:36 [info] 3073#0: *710 key: “C27B70493DBB207CB0943F099311C083” was not found by memcached while reading response header from upstream, client: -, server: -, request: “GET /good/101/ HTTP/1.1”, upstream: “memcached://127.0.0.1:11211”, host: ”-“

ключ — $md5_uri т.е. из /good/101/ получалось C27B70493DBB207CB0943F099311C083

при этом

print hashlib.md5(‘/good/101/’).hexdigest()
 49707bc27c20bb3d093f94b083c01193

после внесенных изменений все стало на место

ответить
Kirill A. Korinskiy 14.07.2009 13:05

Спасибо :)

Сегодня будет новый релиз и в нем будет исправление.

ответить
Alrond 27.10.2009 1:35

привет, нашел, что md5 даже пропатченный неправильно считает:

значение переменной
127.0.0.1
правильный вариант
F528764D624DB129B32C21FBCA0CB8D6
вариант патча
 F528764D624DB129B32C21FBCACB8D6ÿ

значение переменной
XX
правильный вариант
C51B57A703BA1C5869228690C93E1701
вариант патча
 C51B57A73BA1C5869228690C93E171ÿÿ

ответить
mayson 6.11.2009 12:29

Попробуйте вместо вышеуказанного патча-исправления применить этот http://narod.ru/disk/14818851000/md5_-var_fix.patch.html

ответить
Alrond 10.11.2009 6:21

Файл удален с сервиса.”

ответить
Kirill A. Korinskiy 8.12.2009 16:26

http://catap.ru/patches/nginx/Fix-a-md5-variables-missing-0-in-hash.patch

в сегодняшний nginx-catap это войдет.

ответить