За последние 24 часа нас посетили 23613 программистов и 1661 робот. Сейчас ищут 938 программистов ...

вызвать 404 ошибку

Тема в разделе "Прочие вопросы по PHP", создана пользователем Danilevsky, 2 май 2008.

  1. Danilevsky

    Danilevsky Активный пользователь

    С нами с:
    12 фев 2006
    Сообщения:
    286
    Симпатии:
    0
    Адрес:
    Киев
    php5 установлен как модуль Apache
    необходимо вызвать 404 ошибку.
    все примеры из мана php перепробовал. не пашет.
    Код (Text):
    1. header("HTTP/1.0 404 Not Found");
    2. header('Status: 404 Not Found');
    3. header('HTTP/1.0 404 Not Found');
    в чем дело может быть кто-нибудь знает?

    з.ы. до хидеров ничего в броузер не выводиться.
     
  2. lexa

    lexa Активный пользователь

    С нами с:
    22 июл 2007
    Сообщения:
    1.746
    Симпатии:
    0
    Адрес:
    Санкт-Петербург
    Проверяй так:
    Код (Text):
    1. echo '<pre>';
    2. print_r(get_headers('http://сайт'));
    P.S. Браузер может кешировать страницу. У мну в Опере чтобы обновить заголовки надо повторно перейти на страницу, а потом обновить её. Просто обновление заголовки не меняет.
     
  3. Dagdamor

    Dagdamor Активный пользователь

    С нами с:
    4 фев 2006
    Сообщения:
    2.095
    Симпатии:
    1
    Адрес:
    Барнаул
    Danilevsky
    Из моего движка:

    PHP:
    1. <?php
    2.  
    3. header("HTTP/1.0 $code $status");
    4. header("HTTP/1.1 $code $status");
    5. header("Status: $code $status");
    После многих экспериментов пришел к такому варианту... вроде работает везде :)
     
  4. topas

    topas Активный пользователь

    С нами с:
    16 авг 2006
    Сообщения:
    2.258
    Симпатии:
    36
    die() не забываем
     
  5. Dagdamor

    Dagdamor Активный пользователь

    С нами с:
    4 фев 2006
    Сообщения:
    2.095
    Симпатии:
    1
    Адрес:
    Барнаул
    А при чем тут die()?
     
  6. topas

    topas Активный пользователь

    С нами с:
    16 авг 2006
    Сообщения:
    2.258
    Симпатии:
    36
    Dagdamor
    При том, что если ниже header('Location: '); к примеру
     
  7. ShamahN

    ShamahN Активный пользователь

    С нами с:
    10 апр 2007
    Сообщения:
    1.449
    Симпатии:
    0
    Адрес:
    г.Волгодонск Роствской обл.
    PHP:
    1. header("HTTP/1.0 404 Not Found");
    2. header("HTTP/1.1 404 Not Found");
    3. header("Status: 404 Not Found");
    4. die();
    5.  
    Не катит ни в какую!!! Может у меня в настройках сервака что?

    PHP:
    1. printr(get_headers('http://сайт'));
    пишет если поставить его сразу после предыдущих строчек
    Код (Text):
    1.  
    2. Array
    3. (
    4.     [0] => HTTP/1.1 503 Service Temporarily Unavailable
    5.     [1] => Date: Tue, 20 May 2008 15:05:12 GMT
    6.     [2] => Server: Apache/2.0.55 (Win32) PHP/5.2.1
    7.     [3] => X-Powered-By: PHP/5.2.1
    8.     [4] => Status: 503 Service Temporarily Unavailable
    9.     [5] => Retry-After: 120
    10.     [6] => Connection: Close
    11.     [7] => Set-Cookie: PHPSESSID=9jv8efu0044fvfdam44ut67241; path=/
    12.     [8] => Expires: Thu, 19 Nov 1981 08:52:00 GMT
    13.     [9] => Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0
    14.     [10] => Pragma: no-cache
    15.     [11] => Transfer-Encoding: chunked
    16.     [12] => Content-Type: text/html; charset=UTF-8
    17. )
     
  8. Johnatan

    Johnatan Активный пользователь

    С нами с:
    6 мар 2008
    Сообщения:
    508
    Симпатии:
    0
    Адрес:
    Испания
    UTF-8, а файл без BOM записан?
     
  9. ShamahN

    ShamahN Активный пользователь

    С нами с:
    10 апр 2007
    Сообщения:
    1.449
    Симпатии:
    0
    Адрес:
    г.Волгодонск Роствской обл.
    Все, бомов нет :) проверил и вычистил... результата нет :(
     
  10. Эдуард

    Эдуард Активный пользователь

    С нами с:
    6 май 2009
    Сообщения:
    1
    Симпатии:
    0
    Адрес:
    Киев
    Самый первый вариант:
    если у тебя так, а скорее всего так, то

    if(УСЛОВИЕ)
    {
    header("HTTP/1.0 404 Not Found");
    header("HTTP/1.1 404 Not Found");
    header("Status: 404 Not Found");
    die();
    }

    УСЛОВИЕ == false