Настройте базовый URL-адрес в codeigniter

У меня есть такая структура каталогов в зажигателе кода:

 Appsite
    -website
       -application
        -images

Когда я обращался к изображению в index.php, я использовал: <img src="http://localhost/Appsite/website/images/images.PNG"

И href: <li class=""><a href="http://localhos/tAppsite/website/index.php/home/">Home</a></li>

Я думаю, что не рекомендуется включать http://localhost при доступе к изображениям или библиотекам в зажигателе кода. Поэтому я попытался изменить $config['base_url'] в config.php на $config['base_url'] = "http://".$_SERVER["HTTP_HOST"]."/";.

И теперь я обновляю свой источник изображения и другой источник библиотеки. Я удаляю локальный хост и имя папки моего каталога:

<img src="images/images.PNG”> <li class=""><a href= <?php echo base_url;?> /website/index.php/home/">Home</a></li>

Но я получаю ошибки. пишет что объект не найден. Кто-нибудь может мне помочь?


person qazzu    schedule 30.06.2016    source источник


Ответы (3)


В Config.php

$config['base_url'] = 'http://localhost/Appsite/website/';
$config['index_page'] = '';

# If online site
# $config['base_url'] = 'http://stackoverflow.com/';

В .htaccess (вне папки приложения) — чтобы удалить index.php в URL

RewriteEngine on
RewriteCond $1 !^(index\.php|assets|image|resources|robots\.txt)
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?/$1 [L,QSA]

Для доступа к URL

<a href="<?php echo base_url();?>contollerName/methodName"> click here</a>

Для доступа к изображению

<img src="<?php echo base_url();?>images/images.PNG”>

Для доступа к CSS

<link rel="stylesheet" type="text/css" href="<?php echo base_url();?>assets/css/style.css"/>

Чтобы использовать base_url помощник загрузки URL из autoload.php

person Abdulla Nilam    schedule 30.06.2016
comment
Что вы подразумеваете под «Использовать помощник загрузки URL-адреса base_url из autoload.php»? - person qazzu; 30.06.2016
comment
если вы используете base_url, это дает вам ошибку. Итак, перейдите к config/autoload.php и загрузите URL в помощнике. - person Abdulla Nilam; 30.06.2016
comment
Вы имеете в виду вот так $autoload['helper'] = array('form','url'); ? - person qazzu; 30.06.2016
comment
@qazzu, вот и все. (у) - person Abdulla Nilam; 30.06.2016
comment
@qazzu рад помочь ;) - person Abdulla Nilam; 30.06.2016
comment
@AbdullaNilam Был бы признателен за ответ на похожий вопрос - person Nayantara Jeyaraj; 08.10.2016
comment
$config['base_url'] = 'http://localhost/Appsite/website/'; Обратите внимание, что Appsite, как каталог и подкаталоги, УЧИТЫВАЕТ РЕГИСТР. - person Vrushal Raut; 20.09.2017

В вашем config.php установите base_url() как,

$config['base_url'] = 'http://localhost/projectname/';

В вашем представлении загрузите изображение как,

<img src="<?php echo base_url();?>images/images.PNG”>
person Vinod VT    schedule 30.06.2016

Просто поместите это, он автоматически выберет правильный путь к проекту и установит базовый URL-адрес.

$site_url = ((isset($_SERVER['HTTPS']) && strtolower($_SERVER['HTTPS']) !== 'off') || (isset($_SERVER['HTTP_X_FORWARDED_PROTO']) && $_SERVER['HTTP_X_FORWARDED_PROTO'] == 'https')) ? 'https' : 'http';
$site_url .= '://' . (isset($_SERVER['HTTP_HOST']) ? $_SERVER['HTTP_HOST'] : '');
$site_url .= str_replace(basename($_SERVER['SCRIPT_NAME']), '', $_SERVER['SCRIPT_NAME']);

$config['base_url'] = $site_url;
person Jafarali Maknojiya    schedule 14.09.2018