UP, благо мне этот вопрос так-же крайне интересен.<br><br><div class="gmail_quote">2010/1/19 Alexander Radostin <span dir="ltr">&lt;<a href="mailto:alex.radostin@gmail.com">alex.radostin@gmail.com</a>&gt;</span><br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">

<div>Я уже писал сюда про эту проблему, но дело было перед НГ и формулировка подкачала :) Постараюсь пояснить подробней в чем дело.</div><div><br></div><div>Вот правило:</div><div>rewrite ^/download/([^/]+)/(.+)/$       /index.php/download/?hash=$1&amp;filename=$2        last;</div>


<div><br></div>Запускаем на вход вот такой url (валидный, строки обработаны заранее urlencode):<br><div>/download/b7050cd8740a51db29c7bef9a81c74b970cabca3/19%20Thr3shold%20%26%20Detune%20-%20Shapeshifter%20(Epic%20Mix).mp3/</div>


<div><br></div><div>На выходе получаем:</div><div>[&quot;QUERY_STRING&quot;]=&gt;<br>string(120) &quot;hash=b7050cd8740a51db29c7bef9a81c74b970cabca3&amp;filename=19%20Thr3shold%20&amp;%20Detune%20-%20Shapeshifter%20(Epic%20Mix).mp3&quot;</div>


<div><br></div><div>То, что было на входе было закодированным амперсантом (%26), на выходе магическим образом опять им стало, только уже без энкода, соотвественно появляется фантомая переменная и имя файла обрезается. Аналогичный результат получаем и когда на входе амперсант незакодирован. Интересно еще то, что пробелы (%20) без всяких проблем оказываются в результирующей строке, чего не скажешь о закодированных символах прямого слеша или апострофа, которые раскодируются в процессе рерайта в оригинальные.</div>


<div><br></div><div>Есть какое то разумное объяснение такому поведению и есть ли способ сохранить оригинальные строки в результирущем url? Заранее благодарен за все ответы.</div><div><br></div><div><br></div><div>Саша Радостин</div>


<div><span style="font-family: Times; font-size: medium;"></span></div>

<br>_______________________________________________<br>
nginx-ru mailing list<br>
<a href="mailto:nginx-ru@nginx.org">nginx-ru@nginx.org</a><br>
<a href="http://nginx.org/mailman/listinfo/nginx-ru" target="_blank">http://nginx.org/mailman/listinfo/nginx-ru</a><br>
<br></blockquote></div><br><br clear="all"><br>-- <br>Faithfully yours, Eugenie<br>ICQ #701217<br>GTalk <a href="mailto:ekruglov@gmail.com">ekruglov@gmail.com</a><br>