我在代码点火器中有这样的目录结构:
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"]."/";
现在我更新了我的图像源和其他库源我删除了localhost和我的目录文件夹的名称:
<img src="images/images.PNG”>
<li class=""><a href= <?php echo base_url;?> /website/index.php/home/">Home</a></li>
但我得到错误。它说没找到物体。有人可以帮帮我吗?
答案 0 :(得分:10)
在Config.php中
$config['base_url'] = 'http://localhost/Appsite/website/';
$config['index_page'] = '';
# If online site
# $config['base_url'] = 'http://stackoverflow.com/';
在.htaccess
(外部应用程序文件夹) - 删除网址中的index.php
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]
访问网址
<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"/>
使用来自autoload.php的base_url
加载URL帮助器
答案 1 :(得分:1)
在config.php
中设置base_url()
为
$config['base_url'] = 'http://localhost/projectname/';
在您的视图中将图片加载为
<img src="<?php echo base_url();?>images/images.PNG”>
答案 2 :(得分:0)
只需输入此内容,它将采用项目的自动正确路径并设置基本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;