背景
这是我第二次尝试将CodeIgniter网站上传到我的服务器...我已经尝试了所有最重要的建议来实现这一点,但无济于事!
我正在将codeigniter上传到我的https://example.com/app
我正在使用具有codeigniter的HMVC模块,但这不应该导致这些问题。
问题
我的CSS文件拒绝加载,它们显示404错误。
这是我的文件夹结构:
以下是我在HTML模板中加载文件的方法......
<link rel="stylesheet" href="<?php echo base_url() . 'public/css/bootstrap.css'; ?>">
<link rel="stylesheet" href="<?php echo base_url() . 'public/css/font-awesome.css'; ?>">
<link rel="stylesheet" href="<?php echo base_url() . 'public/css/custom.css'; ?>">
这是我的base_url()配置......
$config['base_url'] = 'https://toucan-talk.com/app/';
这是我的.htaccess文件(目前,我尝试过几种不同的设置)。
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [L]
</IfModule>
我不确定这里出了什么问题!
答案 0 :(得分:2)
问题是base_url()
会返回https://toucan-talk.com/app/
,当您添加css文件夹时,您会获得https://toucan-talk.com/app/public/css/bootstrap.css
这不是有效路径。
最简单的解决方法是移动公用文件夹,使其成为app /.
的子文件夹另一个选项是修改从base_url()
返回的字符串并修改它以创建正确的路径。
第一行代码将https://toucan-talk.com/app/
转换为https://toucan-talk.com/Public/css/
<?php
$css_path = str_replace('app', 'Public/css/', base_url());
?>
<link rel="stylesheet" href="<?php echo $css_path;?>bootstrap.css">
<link rel="stylesheet" href="<?php echo $css_path;?>font-awesome.css">
<link rel="stylesheet" href="<?php echo $css_path;?>custom.css'; ?>">