我一直在设置.htaccess文件以将所有请求重定向到windows 7中的xampp下的index.php文件(从url中删除index.php),并认为我可能为自己创建了一个问题......但是又可能是无关的。
我似乎在引用我在css,images和js的基目录中设置的目录时遇到了问题。我已经跟踪了这个问题,但还不确定如何解决它。如果我导航回目录../css/stye.css与css / style.css,那么样式表将加载。如果我使用索引函数调用键入基本URL或基本URL,则所有内容都按预期加载:
http://localhost/site
http://localhost/site/home
现在我添加控制器方法名称
http://localhost/site/home/index
我的css不再包括在内(直到我进入firebug并导航回目录)
位于我的基本目录中的.htaccess文件(我发现使用xampp)中的代码如下:
RewriteEngine on
RewriteCond $1 !^(index\.php|resources|robots\.txt)
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [L,QSA]
我公开承认我不太了解.htaccess文件。
CSS href:
<link rel="stylesheet" type="text/css" href="css/jmw.css" />
修改
按照Rajeev Ranjan的建议编辑.htaccess文件
RewriteEngine on
RewriteCond $1 !^(index\.php|robots\.txt|css|images|js)
RewriteRule ^(.*)$ ./index.php/$1 [L]
我假设每个视图都像index.php文件本身一样工作并以这种方式访问目录。在样式表,javascript或图像调用之前使用base_url()函数时,一切都有效,但我试图不在视图文件的多个位置依赖base_url()函数。
答案 0 :(得分:1)
我也遇到了这个问题。请将此行放在.htaccess
文件中
RewriteCond $1 !^(index\.php|images|robots\.txt|css|img|js)
即。允许css。
Wampp:
RewriteEngine on
RewriteCond $1 !^(index\.php|images|robots\.txt|css|img|js)
RewriteRule ^(.*)$ ./index.php/$1 [L]
并通过
调用css<link rel="stylesheet" href="<?php echo base_url();?>css/main/style.css"/>
,或者
<link rel="stylesheet" href="<?php echo base_url('css/main/style.css');?>"/>
答案 1 :(得分:0)
你可以试试这个例子
<link rel="stylesheet" type="text/css" href="<?=base_url()?>css/jmw.css" />
答案 2 :(得分:0)
RewriteEngine on
RewriteCond $1 !^(index\.php|images|robots\.txt|css|img|js)
RewriteRule ^(.*)$ ./index.php/$1 [L]
In second line ie;
RewriteCond $1 !^(index\.php|images|robots\.txt|css|img|js)
You have to pass the folder name of your css, js and image files like:
RewriteCond $1 !^(index\.php|images|robots\.txt|css|img|js|assets|images)
答案 3 :(得分:0)
终于搞清楚了!在过去几个月使用codeigniter并对.htaccess文件中的确切内容有了更广泛的了解后,解决方案显而易见。由于.htaccess文件指向controllers目录,每当我尝试从'/ images'等访问我的images / js / css文件时,它都会查看控制器目录。
为了解决这种情况,我在config.php中设置了base_url ='',在那里我调用images / js / css,我横向返回一个目录'../ images / file.png'。简单的解决方案,只是让我的大脑点击了一下:)