И не могу врубиться, какого фига значения отличаются от $_SERVER['REQUEST_URI']. И это при том, что явным образом присвоить другое значение в $_SERVER['REQUEST_URI'] почему-то нельзя. Как тогда происходит подмена неясно. Есть подозрение, что это из-за срабатывания модреврайта в .htaccess, но никогда не думал, что так непредсказуемо всё работает(.
DyaDya добавил 06.12.2010 в 12:58
Яху... Решение найдено. Нужно использовать: getenv("REQUEST_URI"), в ней путь правильный)
[umka: ]Не может перезаписать этот массив, то скорее всего на сервере устроено какое-то шаманство, вроде патчей для безопасности, и оно не даёт менять этот массив и, при этом, само иногда глюкует (случай в посте №1)
Пока остаётся верить только в это. Но не понятно, почему тогда при вызове этих строк друг за другом, они показываются разные значения в REQUEST_URI ?
[umka: ]Но если, как вы говорите, в отдельном скрипте всё правильно, то дело в движке.
В отдельном скрипте правильно. Но массив не перезаписываемый оказывается).
А с другой стороны, первый пост говорит о другом, что, видимо, перезаписываемый. Вот и ломаю голову.
А если с третьей стороны глянуть, то почему phpinfo() показывается правильно значение пути в REQUEST_URI, а в переменной $_SERVER['REQUEST_URI'] реально оказывается совсем другое значение. phpinfo из другого места данные свои вытягивает что ли?
'[umka: ;8125573']Пхп работает как модуль или как cgi?
[umka] добавил 06.12.2010 в 00:14 сделайте пустой скриптик script.php <? echo "<br>".$_SERVER['REQUEST_URI']."<br><br>"; phpinfo(); ?> и вызовите его. возможно, движок занимается самодеятельностью.
[umka] добавил 06.12.2010 в 00:19 возможно, где-нибудь вместо if ($_SERVER['REQUEST_URI']=='/') написано if ($_SERVER['REQUEST_URI']='/') :)
Проверил на отдельном скриптеке, всё ОК. Пути правильные везде.
DyaDya добавил 06.12.2010 в 00:25
[umka], более того!!! Сделал для прикола вот так, попробовал заменить значение, вдруг, оно правда где-то перебивается... Проверяю так:
В итоге, внимание!!! Всё равно путь оказывается правильным! "/" не перезаписывается в переменную окружения!
В $_SERVER['REQUEST_URI'] всё равно оказывается правильный путь). Это даже, возможно, всё логично. Чтобы скрипты не могли окружение апача менять. Но тогда почему получается такой косяк, как в первом посте?!
А в чём будет разница?
А что вам больше понравится, если предложат 15 купюр по 500 р. или 4, но по 5000 р.?
p.s. кто-то, конечно, возьмёт и то и другое)
pp.ss. кто-то перед тем как сделать выбор, решит проверить их на фальшивость и тоже будет прав.
а причем тут phpinfo() ?
Проверяю, что передаётся в REQUEST_URI !
И не могу врубиться, какого фига значения отличаются от $_SERVER['REQUEST_URI']. И это при том, что явным образом присвоить другое значение в $_SERVER['REQUEST_URI'] почему-то нельзя. Как тогда происходит подмена неясно. Есть подозрение, что это из-за срабатывания модреврайта в .htaccess, но никогда не думал, что так непредсказуемо всё работает(.
DyaDya добавил 06.12.2010 в 12:58
Яху... Решение найдено. Нужно использовать: getenv("REQUEST_URI"), в ней путь правильный)
Спасибо шаманам из WebAsyst
]не выдаёт установленное значение, то нужно интересоваться у хостера на предмет "а чё вообще за фигня?"
Т.е. идти нужно к колдунам))) Ок, так и делаю тоды.
]Я вот делаю
<?
$_SERVER['REQUEST_URI']='/abrakadabra';
phpinfo();
?>
и у меня phpinfo показывает в $REQUEST_URI по-прежнему '/script.php', а в $_SERVER['REQUEST_URI'] — '/abrakadabra'
Везёт вам). У вас сервер менее заколдованный) Может это связано с тем, что у вас пхп стоит как cgi, а в моём случае, как модуль? Или наоборот.
]Не может перезаписать этот массив, то скорее всего на сервере устроено какое-то шаманство, вроде патчей для безопасности, и оно не даёт менять этот массив и, при этом, само иногда глюкует (случай в посте №1)
Пока остаётся верить только в это. Но не понятно, почему тогда при вызове этих строк друг за другом, они показываются разные значения в REQUEST_URI ?
1. echo "<br>".$_SERVER['REQUEST_URI']."<br><br>";
2. phpinfo();
phpinfo() при выводе, свои данные откудато вытаскивает, не завязанные напрямую с $_SERVER['REQUEST_URI'] ??? Что-то через чур уж зашаманено.
]Но если, как вы говорите, в отдельном скрипте всё правильно, то дело в движке.
В отдельном скрипте правильно. Но массив не перезаписываемый оказывается).
А с другой стороны, первый пост говорит о другом, что, видимо, перезаписываемый. Вот и ломаю голову.
А если с третьей стороны глянуть, то почему phpinfo() показывается правильно значение пути в REQUEST_URI, а в переменной $_SERVER['REQUEST_URI'] реально оказывается совсем другое значение. phpinfo из другого места данные свои вытягивает что ли?
p.s. сложно выражаюсь, но реальность пока такая)
;8125573']Пхп работает как модуль или как cgi?
[umka] добавил 06.12.2010 в 00:14
сделайте пустой скриптик script.php
<?
echo "<br>".$_SERVER['REQUEST_URI']."<br><br>";
phpinfo();
?>
и вызовите его.
возможно, движок занимается самодеятельностью.
[umka] добавил 06.12.2010 в 00:19
возможно, где-нибудь вместо
if ($_SERVER['REQUEST_URI']=='/')
написано
if ($_SERVER['REQUEST_URI']='/')
:)
Проверил на отдельном скриптеке, всё ОК. Пути правильные везде.
DyaDya добавил 06.12.2010 в 00:25
[umka], более того!!! Сделал для прикола вот так, попробовал заменить значение, вдруг, оно правда где-то перебивается... Проверяю так:
В итоге, внимание!!! Всё равно путь оказывается правильным! "/" не перезаписывается в переменную окружения!
В $_SERVER['REQUEST_URI'] всё равно оказывается правильный путь). Это даже, возможно, всё логично. Чтобы скрипты не могли окружение апача менять. Но тогда почему получается такой косяк, как в первом посте?!
Аналогичная ситуация, уникальный контент. Осталось 10 и 16 страниц
Контент может быть уникальным, но нафиг никому не интересным. Отличный повод для опорожнения поисковой базы.
На дорвеях тоже контент уникальный).
15 с пр 2.......
А мне по душе такой вариант)
4 площадки с PR 4
Что-то мало, учитывая все эти миллиарды, которые они выручили с аукционов.
Мелко берёте - они выручили триллиарды!))))