<?xml version="1.0" encoding="koi8-r"?>
<rss version="0.91">
<channel>
    <title>OpenForum RSS: mod_rewrite - странность с &#037;&#123;REQUEST_URI&#125;</title>
    <link>https://opennet.dev/openforum/vsluhforumID8/7166.html</link>
    <description>Что-то никак не могу нарыть в документации: возникла элементарная задача при запросе &lt;br&gt;/articles.php?id=1 сделать внешний редирект.&lt;br&gt;&lt;br&gt;Естественно, первое приходящее в голову условие:&lt;br&gt;&lt;br&gt;RewriteCond &#037;&#123;REQUEST_URI&#125; =/articles.php?id=1&lt;br&gt;&lt;br&gt;Не срабатывает, по логам видно, что в подстановку приходит /articles.php&lt;br&gt;&lt;br&gt;&#091;perdir /var/www/htdocs/&#093; RewriteCond: input=&apos;/articles.php&apos; pattern=&apos;=/articles.php?id=1&apos; =&amp;gt; not-matched&lt;br&gt;&lt;br&gt;Собственно, почему не работает правило понятно, и сделаю то же самое на &#037;&#123;THE_REQUEST&#125;, но хотелось бы понять, почему $_SERVER&#091;&apos;REQUEST_URI&apos;&#093; в php содержит логичное &quot;/articles.php?id=1&quot;, а для mod_rewrite QUERY часть, получается, отбрасывается.&lt;br&gt;</description>

<item>
    <title>mod_rewrite - странность с &#037;&#123;REQUEST_URI&#125; (reivaX)</title>
    <link>https://opennet.dev/openforum/vsluhforumID8/7166.html#16</link>
    <pubDate>Mon, 07 Mar 2011 09:53:11 GMT</pubDate>
    <description>&lt;br&gt;&amp;gt; Судя по всему mod_rewrite и использует вот эту трактовку REQUEST_URI.&lt;br&gt;&lt;br&gt;Спасибо! В сырцы заглянуть как-то и не подумалось&lt;br&gt;&lt;br&gt;</description>
</item>

<item>
    <title>mod_rewrite - странность с &#037;&#123;REQUEST_URI&#125; (zoonman)</title>
    <link>https://opennet.dev/openforum/vsluhforumID8/7166.html#15</link>
    <pubDate>Mon, 07 Mar 2011 05:43:21 GMT</pubDate>
    <description>Согласно RFC http://www.ietf.org/rfc/rfc3986.txt URI должен нести в себе даже адрес фрагмента, но передача его на сервер не производится браузерами.&lt;br&gt;&lt;br&gt;Согласно описания структуры struct request_rec (778 строка)&lt;br&gt;http://svn.apache.org/viewvc/httpd/httpd/branches/2.2.x/include/httpd.h?revision=1076611&amp;view=markup &lt;br&gt;&lt;br&gt;/** The path portion of the URI, or &quot;/&quot; if no path provided */&lt;br&gt;946 char *uri; &lt;br&gt;&lt;br&gt;/** The QUERY_ARGS extracted from this request */&lt;br&gt;955 char *args;&lt;br&gt;&lt;br&gt;Судя по всему mod_rewrite и использует вот эту трактовку REQUEST_URI.&lt;br&gt;</description>
</item>

<item>
    <title>mod_rewrite - странность с &#037;&#123;REQUEST_URI&#125; (reivaX)</title>
    <link>https://opennet.dev/openforum/vsluhforumID8/7166.html#14</link>
    <pubDate>Sun, 06 Mar 2011 22:56:17 GMT</pubDate>
    <description>&amp;gt; Заинтересовали вы меня))) &lt;br&gt;&amp;gt; RewriteEngine on &lt;br&gt;&amp;gt; RewriteCond &#037;&#123;REQUEST_URI&#125; /articles.php &lt;br&gt;&amp;gt; RewriteCond &#037;&#123;QUERY_STRING&#125; id=1 &lt;br&gt;&amp;gt; RewriteRule (.*) 1.php &lt;br&gt;&lt;br&gt;Нет, ну вы правы, конечно - ваша конструкция сработает, как и использованная мною&lt;br&gt;&lt;br&gt;RewriteCond &#037;&#123;THE_REQUEST&#125; ^&#091;A-Z&#093;&#123;3,9&#125;&#092; /articles&#092;.php&#092;?id=134&#092; HTTP/&lt;br&gt;&lt;br&gt;Но вопрос-то в том, чтобы понять, на основании чего появляется разница в представлении REQUEST_URI для mod_rewrite, и для, скажем просто, модуля php.&lt;br&gt;&lt;br&gt;Т.е. понимая проявление проблемы, меня главным образом зацепило то, что ничего не могу найти на этот счет в документации. Ведь если URI - это Uniform Resource Identifier, то идентифицировать-то оно должно по полному адресу запроса, т.е. содержать в REQUEST_URI /articles.php?id=1&lt;br&gt;В смысле - мол, ну какой же это REQUEST_URI, если это скорее SCRIPT_FILENAME или REQUEST_FILENAME&lt;br&gt;&lt;br&gt;Лично мне это важно выяснить поскольку возможности для отладки правил m_r крайне скудны.&lt;br&gt;&lt;br&gt;</description>
</item>

<item>
    <title>mod_rewrite - странность с &#037;&#123;REQUEST_URI&#125; (zoonman)</title>
    <link>https://opennet.dev/openforum/vsluhforumID8/7166.html#13</link>
    <pubDate>Sun, 06 Mar 2011 22:18:24 GMT</pubDate>
    <description>Заинтересовали вы меня)))&lt;br&gt;&lt;br&gt;RewriteEngine on&lt;br&gt;&lt;br&gt;RewriteCond &#037;&#123;REQUEST_URI&#125; /articles.php&lt;br&gt;RewriteCond &#037;&#123;QUERY_STRING&#125; id=1&lt;br&gt;RewriteRule (.*)1.php&lt;br&gt;</description>
</item>

<item>
    <title>mod_rewrite - странность с &#037;&#123;REQUEST_URI&#125; (zoonman)</title>
    <link>https://opennet.dev/openforum/vsluhforumID8/7166.html#12</link>
    <pubDate>Sun, 06 Mar 2011 21:45:15 GMT</pubDate>
    <description>&amp;gt; &#091;perdir /var/www/htdocs/&#093; RewriteCond: input=&apos;/articles.php&apos; pattern=&apos;=/articles.php?id=1&apos; &lt;br&gt;&lt;br&gt;Шаблон со знаком равно подставляется.&lt;br&gt;&lt;br&gt;&lt;br&gt;А так срабатывает? &lt;br&gt;&lt;br&gt;RewriteCond &#037;&#123;REQUEST_URI&#125; /articles.php?id=1&lt;br&gt;</description>
</item>

<item>
    <title>mod_rewrite - странность с &#037;&#123;REQUEST_URI&#125; (reivaX)</title>
    <link>https://opennet.dev/openforum/vsluhforumID8/7166.html#11</link>
    <pubDate>Sun, 06 Mar 2011 21:00:12 GMT</pubDate>
    <description>&amp;gt; Если задача решена, то какой смысл в применении mod_rewrite? Спортивный интерес?&lt;br&gt;&lt;br&gt;Смысл в том, чтобы понимать как что работает.&lt;br&gt;&lt;br&gt;&quot;но хотелось бы понять, почему $_SERVER&#091;&apos;REQUEST_URI&apos;&#093; в php содержит логичное &quot;/articles.php?id=1&quot;, а для mod_rewrite QUERY часть, получается, отбрасывается.&quot;&lt;br&gt;&lt;br&gt;Учитывая то, что я перерыл по ходу оф. документацию, и как только мог придумать прогуглил, туманность этой мелочной заподлистости хотелось бы рассеять.&lt;br&gt;&lt;br&gt;К тому же день спустя опять затык другого свойства, опять же на REQUEST_URI, но там доступа к логам нет никакого, потому только по симптоматике вижу, что фигня творится.&lt;br&gt;&lt;br&gt;Где-то что-то мимоходом проскакивало про изменения в Apache 2.x, но без конкретики.&lt;br&gt;</description>
</item>

<item>
    <title>mod_rewrite - странность с &#037;&#123;REQUEST_URI&#125; (zoonman)</title>
    <link>https://opennet.dev/openforum/vsluhforumID8/7166.html#10</link>
    <pubDate>Sun, 06 Mar 2011 20:25:20 GMT</pubDate>
    <description>Если задача решена, то какой смысл в применении mod_rewrite? Спортивный интерес?&lt;br&gt;</description>
</item>

<item>
    <title>mod_rewrite - странность с &#037;&#123;REQUEST_URI&#125; (reivaX)</title>
    <link>https://opennet.dev/openforum/vsluhforumID8/7166.html#9</link>
    <pubDate>Sun, 06 Mar 2011 20:16:37 GMT</pubDate>
    <description>&amp;gt; А что-то в articles.php мешает дописать следующее &lt;br&gt;&amp;gt; if ($_GET&#091;&apos;id&apos;&#093; == 1) &#123; &lt;br&gt;&amp;gt;  header(&quot;Location: http://opennet.ru/&quot;); &lt;br&gt;&amp;gt; &#125; &lt;br&gt;&lt;br&gt;Например то, что вопрос мой касается поведения mod_rewrite, а не того, как мне решить задачу (решенную сразу), тем более что в теме это указано явно.&lt;br&gt;</description>
</item>

<item>
    <title>mod_rewrite - странность с &#037;&#123;REQUEST_URI&#125; (reivaX)</title>
    <link>https://opennet.dev/openforum/vsluhforumID8/7166.html#8</link>
    <pubDate>Sun, 06 Mar 2011 20:11:51 GMT</pubDate>
    <description>&amp;gt; ну так и почувствуйте разницу: точки, пробелы, слэши и вопросительный знак замаскированы &lt;br&gt;&lt;br&gt;у вас просто повысказываться потребность существует? &lt;br&gt;&lt;br&gt;еще раз рекомендую посмотреть на то, что в input-е по логам приходит, а не на то, что по pattern-у сверяется. таки почувствуйте разницу. ой-вэй.&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt; &lt;br&gt;&lt;br&gt;&lt;br&gt;</description>
</item>

</channel>
</rss>
