За последние 24 часа нас посетили 15179 программистов и 1671 робот. Сейчас ищут 984 программиста ...

HTTP-заголовки не работают

Тема в разделе "PHP для новичков", создана пользователем GoldenFILL, 19 апр 2017.

  1. GoldenFILL

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

    С нами с:
    16 мар 2017
    Сообщения:
    20
    Симпатии:
    1
    Адрес:
    Россия, Республика Крым, Симферополь
    Добрый день!
    Подскажите чем может быть чем трабла

    Отправляю заголовки:
    PHP:
    1.     header("Date: " . date("D, d M Y H:i:s e"));
    2.     header("Expires: " . date("D, d M Y H:i:s e", time() + (60*60*24)));
    3.     header("Content-type: text/html; charset=" . $gt_globals['config']['CHARSET']);
    4.     header("Location: " . $url);
    Значения переменных перепроверял ...
    $gt_globals['config']['CHARSET'] = utf-8
    $url = "http://my.site.ru/

    а от сервера приходит :
    gt_echo_array(apache_response_headers());

    [Expires] => Thu, 19 Nov 1981 08:52:00 GMT
    [Cache-Control] => no-store, no-cache, must-revalidate, post-check=0, pre-check=0
    [Pragma] => no-cache

    Location: отрабатывает исправно
     
    #1 GoldenFILL, 19 апр 2017
    Последнее редактирование: 19 апр 2017
  2. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    как именно проверял?
    --- Добавлено ---
    это не совсем то, что ты пишешь туда. что наталкивает на мысль, что это не те заголовки, что ты отдаёшь.
     
  3. GoldenFILL

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

    С нами с:
    16 мар 2017
    Сообщения:
    20
    Симпатии:
    1
    Адрес:
    Россия, Республика Крым, Симферополь
    PHP:
    1. function gt_redirect($url){
    2.     global $gt_globals;
    3.  
    4.     //Проверял так:
    5.     echo $url;
    6.     echo $gt_globals['config']['CHARSET'];
    7.     exit();
    8.  
    9.     ob_start();
    10.     header("Date: " . date("D, d M Y H:i:s e"));
    11.     header("Expires: " . date("D, d M Y H:i:s e", time() + (60*60*24)));
    12.     header("Content-type: text/html; charset=" . $gt_globals['config']['CHARSET']);
    13.     header("Location: " . $url);
    14.     ob_end_flush();
    15. }
    А выводит значения заголовков:
    PHP:
    1. function gt_echo_array($array, $s = '', $hirey = '') {
    2.     $str = $s;
    3.     if (!is_array($array)) {
    4.         trigger_error("переданный в gt_echo_array() аргумент не является массивом");
    5.         return false;
    6.     }
    7.     echo '<br>';
    8.     foreach ($array as $key => $value) {
    9.         if(is_array($value)) {
    10.             $str = "<strong style='font-weight: bold; color: #077;'>" . $hirey . "[" . $key . "]";
    11.             gt_echo_array($value, $str, $hirey."[" . $key . "]");
    12.         } else {
    13.             echo $str. "[" .  $key . "]</strong> => <strong style='bold; color: #B00;'>" . $value . "</strong><br>";
    14.         }
    15.         echo PHP_EOL;
    16.     }
    17. }
    я понимаю, что есть еще функция PHP get_headers($url);
    Что-то у меня на моем OpenSуrver она тупит.
     
  4. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    что это и зачем?

    почитай про debug
     
  5. denis01

    denis01 Суперстар
    Команда форума Модератор

    С нами с:
    9 дек 2014
    Сообщения:
    12.227
    Симпатии:
    1.714
    Адрес:
    Молдова, г.Кишинёв