当mod_rewrite打开时,无法访问css或js


When mod_rewrite is on cant access css or js

.htaccess文件

RewriteEngine on
RewriteCond %[REQUEST_FILENAME] !-d 
RewriteCond %[REQUEST_FILENAME] !-f 
RewriteCond %[REQUEST_FILENAME] !-l
RewriteRule ^(.+)$ index.php [L,QSA]

如果我在浏览器中键入:http://quick-mvc/public/css/style.css

结果:白色的屏幕,空白的css文件,即使当我用chrome检查并点击链接它的空白

如果我关闭"重写引擎",那么css文件将显示为相同链接没有问题。

我一直在寻找类似的问题,我只是真的很困惑。这似乎是一个复杂的问题。

因此,基本上,我正在构建这个模型视图控制器项目,我无法获得css或js来在.上使用mod_rewrite

我该如何解决这个问题?

您可以(必须?)设置RewriteBase值:

RewriteEngine on
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-l
RewriteRule ^(.+)$ index.php [L,QSA]

作为一名程序员,有时你会犯一些愚蠢的错误,这会让你陷入一些重大的挫折。

正如上面提到的cmorrissey,我必须使用大括号而不是方括号。哇。经验教训。:)

不过一切都很好,我现在将在代码故障排除中更加小心和细致。这个过程并非没有学习。

解决方案

卷曲括号

RewriteCond %{REQUEST_FILENAME} !-d 

不方正!

RewriteCond %[REQUEST_FILENAME] !-d