codeigniter ssl: заголовок длины содержимого всегда пуст в запросах http - PullRequest
0 голосов
/ 29 марта 2020

Я добавил SSL в Codeigniter, используя hooks, и вот моя конфигурация файла перехвата

function redirect_ssl() {
    $CI =& get_instance();
    $class = $CI->router->fetch_class();
    $exclude =  array('client');  // add more controller name to exclude ssl.
    if(!in_array($class,$exclude)) {
      // redirecting to ssl.
      $CI->config->config['base_url'] = str_replace('http://', 'https://', $CI->config->config['base_url']);
      if ($_SERVER['SERVER_PORT'] != 443) redirect($CI->uri->uri_string());
    } 
    else {
      // redirecting with no ssl.
      $CI->config->config['base_url'] = str_replace('https://', 'http://', $CI->config->config['base_url']);
      if ($_SERVER['SERVER_PORT'] == 443) redirect($CI->uri->uri_string());
    }
}

SSL работает без проблем, но когда я делаю запрос без SSL ie * 1005 Заголовок * content-length` всегда возвращает ноль, даже если содержимое присутствует

[Content-Length] => 0

Как мне решить эту проблему ??

Вот так я получаю запрос тело '

$data = file_get_contents('php://input');
$obj = json_decode($data);
...