У меня проблема со следующим кодом:
<?php
session_start();
require_once("config.php");
if(isset($_SESSION['location']) && !empty($_SESSION['location'])) {
$location = $_SESSION['location'];
$url = ABS_PATH . $location;
unset($_SESSION['location']);
header('Location: ' . $url);
}
Значение $ url:
http://www.domain.eu/somepage
и значение, переданное в header ():
Location: http://www.domain.eu/somepage
Это нормально для Opera, IE (7,8,9) и Firefox, но, к сожалению, он не работает в Chrome, и я не знаю почему. Упомянутый пример кода взят из файла index.php и выполняется каждый раз, когда вы загружаете страницу. У меня есть другой файл (display.php), на который я отправляю URL через запрос AJAX. Файл display.php устанавливает значение $ _SESSION ['location'] и возвращает содержимое страницы. В браузерах, отличных от Chrome, когда я обновляю страницу, он перенаправляет меня на правильный URL. Во время отладки я заметил, что даже когда я ставлю die (); после
unset($_SESSION['location']);
он не выполняет его, но когда я ставлю его до того, как он заработает. Может кто-нибудь есть идеи, как решить мою проблему?
Заранее спасибо за помощь.