codeigniter:为什么当我在一个锚标签的href属性中回显base_url()时,它回响两次

dav*_*ave 5 php url anchor codeigniter base-url

所以基本上当我在锚标记的href属性中回显codeigniter函数base_url()时,它似乎将它回显两次.例:

<a href="<?php echo base_url(); ?>">somelink</a>
Run Code Online (Sandbox Code Playgroud)

以上,如果您检查它,您的Chrome浏览器会显示:

<a href="www.mysitedomainname.com/www.mysitedomainname.com/">somelink</a>
Run Code Online (Sandbox Code Playgroud)

"mysitedomainname.com"只是我为这个例子编写的名字.出现这种情况的原因是什么?

Ser*_*sky 6

我知道有三个原因导致这种情况.

第一个是当config.php第17行写入错误时$config['base_url'] = '';- 最好留空,就像你下载CI一样.

第二个是如果你设置$config['base_url']了某些东西而没有为它添加前缀http://或其他协议.

第三个是如果你已经设置了base href某个地方:

<base href="http://www.mysitedomainname.com/" />
Run Code Online (Sandbox Code Playgroud)

当你需要链接到其他一些页面时,你应该使用site_url(),base_url()可以用来链接样式表,js,img src属性和其他真实的 URL.原因很简单,base_url()不包括index_page设置的值config.php.