Ага 🙄
Правильней наверно будет с HTTP, более того, в документации на PHP.net написано, что в протоколе http версии 1.1, указание абсолютного пути, включая имя хоста и полный путь, обязательно (!) (но некоторые клиенты - броузеры, поддерживают и относительные пути, без имени хоста).
Там же приведен немного громоздкий пример правильного использования редиректа location:
/* Redirect to a different page in the current directory that was requested */ $host = $_SERVER['HTTP_HOST']; $uri = rtrim(dirname($_SERVER['PHP_SELF']), '/\\'); $extra = 'mypage.php'; header("Location: http://$host$uri/$extra"); exit;
P.s. Вот тут еще немного сам для себя про редиректы выписывал.
Сам задаюсь таким вопросом, но вроде из простого JS врядли доступна такая информация, только в связке JS + какой-нибудь серверный язык, скрипт (PHP, perl, SSI).
Настраиваем веб-сервер чтобы он js файлы обрабатывал
например php интерпритатором, подключаем js с такого сервера, а а самом файле js пишем php код генерирурющий javascript, например:
По такому принципу работают практически все скрипты якобы полчающие ip средствами javascript, которые я видел:
http://javascript.internet.com/user-details/ip-address.html
http://www.hashemian.com/tools/visitor-IP.htm
В том числе и Google Analytics: http://www.google-analytics.com/urchin.js
Тоже сначало задумался над этим, но слава блогу сапе не рассматривает адреса с разными якорями как разные страницы, ну или я может что то упускаю из виду...
За редиректы? Тогда дела плохи, особенно для сайтов которые делали в "веботделе" 🙄
<META HTTP-EQUIV="Refresh" CONTENT="10; URL=/">
Сделал у себя так:
$uri = getenv('REQUEST_URI'); $url = preg_replace("#^([^\?]+).*$#msi", "\\1", $uri); if ($url!=$uri) { header("Location: {$url}", TRUE, 301); exit(); }
P.s. Фух, вроде бы в этот раз пронесло :D
Быстрое решение для страниц и движков в которых динамические параметры GET не используются, добавляем в начале скриптов следующий код:
301 редирект (Moved Permanently) на эту же страницу без параметров.
Дальше думаем как переделать сайт чтобы он работал без GET запросов. 🚬
В старых версиях - старые уязвимости, кроме того у меня ипб 1.3, скачанный еще в далекие времена, без дополнительных исправлений - отказывается работать на новых версиях php и mysql. Хотя сейчас судя по тому что спрос на бесплатные форумы растет, наверно есть готовые моды и патчи которые все это дело правят 🚬
IPB платный 🚬