codeigniter: почему, когда я повторяю базовый URL() в атрибуте href тега привязки, он повторяется дважды
Таким образом, в основном, когда я повторяю функцию codeigniter base_url() в атрибуте href тега привязки, кажется, что он повторяет ее дважды. Пример:
<a href="<?php echo base_url(); ?>">somelink</a>
И выше, если вы проверите его, ваш браузер Chrome покажет следующее:
<a href="www.mysitedomainname.com/www.mysitedomainname.com/">somelink</a>
"mysitedomainname.com "это просто имя, которое я придумал для этого примера. Есть какая-нибудь причина, по которой это происходит?
3 answers
Есть три причины, о которых я знаю, которые могут вызвать это.
Первый - это когда что-то неправильно написано в config.php
в строке 17 $config['base_url'] = '';
- лучше оставить его пустым, как при загрузке CI.
Второй вариант - если вы установили значение $config['base_url']
для чего-либо без префикса http://
или другого протокола.
Третий - если вы установили base
href
где-то:
<base href="http://www.mysitedomainname.com/" />
Когда вам нужно перейти по ссылке на какую-либо другую страницу, вы должны использовать site_url()
, base_url()
может использоваться для связывания таблиц стилей, атрибутов js, img src и других реальных URL-адресов. Причина довольно проста, base_url()
не включает значение index_page
, установленное в config.php
.
Попробуйте это
Сделай это
$config['base_url'] = "http://www.mysitedomainname.com"
В это
$config['base_url'] = ""
В config.php
Он будет работать нормально, если вы используете
<a href="<?php echo base_url('Controller/Function'); ?>">somelink</a>