У меня была такая же проблема.В моем случае мне пришлось использовать только SSL на панели управления.
Я решил эту проблему, переписав URL-помощник:
function base_url($flag = true)
{
$CI = CI_Controller::get_instance();
if (strpos(current_url(), '/cp/') and $flag) {
return str_ireplace('http://', 'https://', $CI->config->slash_item('base_url')).'index.php/';
}
return $CI->config->slash_item('base_url');
}
В этом случае «/ cp /» означает «панель управления".Я был вынужден сделать это таким образом, потому что другие способы (такие как добавление secure_base_url
к config.php
или другим помощникам SSL) не работали для меня.
Дополнительный параметр $flag
предназначен для изображений, CSSи файлы JS, которые должны быть загружены в панель управления.Используйте base_url(false)
в этих случаях, поскольку https://www.example.com/**index.php**/image.png
является неправильным адресом для файла image.png
.
Вы можете сделать то же самое для своего веб-сайта.
Надеюсь, это поможет.