编程语言
首页 > 编程语言> > php – Codeigniter回显[:: 1]而不是localhost

php – Codeigniter回显[:: 1]而不是localhost

作者:互联网

我使用CodeIgniter 3作为Web平台,并尝试将语义UI UI导入到我的页面中.我是通过在CSS导入的href属性中使用CodeIgniter的base_url()方法来实现的.

但是,semantic.css本身会导入我服务器上存在的其他一些字体,然后由于跨源资源共享策略而无法加载这些字体.这是chrome给我的错误消息:

来自“http:// [:: 1]”的字体已被跨源资源共享策略阻止加载:请求的资源上没有“Access-Control-Allow-Origin”标头.因此不允许原点’http://localhost‘进入.

这是因为base_url()回应域已经是[:: 1]而不是localhost,就像我在浏览器中输入的那样.

出于某种原因,在我看来,chrome(以及Edge)并不认为[:: 1]和localhost是同一个主机,或者我可能只是愚蠢.我所知道的是,如果我将主semantic.css文件的路径和硬代码localhost更改为它,它可以工作,如果不使用localhost请求我的页面,它也可以使用[:: 1]

我已经完成了与此类似的其他项目,并且从未出现过“[:: 1]”.究竟是什么导致php回应这样的路径?

解决方法:

因为你的base_url是空的.

在config / config.php中

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

标签:codeigniter-3,php,codeigniter,codeigniter-2
来源: https://codeday.me/bug/20190926/1818387.html