.htaccess配置导致CSS无法加载的解决方法咨询
解决.htaccess导致CSS文件无法加载的问题
别担心,新手刚接触.htaccess遇到这种问题太正常啦!你的情况大概率是当前的重写规则把所有请求都转发到index.php了——包括像style.css这样的静态资源文件,服务器根本没机会去读取asset目录里的真实文件,直接返回了首页内容。
给你一个简单有效的解决方案:在重定向到index.php的规则前,先添加几个条件,告诉服务器“如果请求的是真实存在的文件/目录,就跳过重写规则”。具体配置如下:
# 开启重写引擎(如果你的配置里已经有这行,就不用重复加) RewriteEngine On # 排除真实存在的文件、目录、符号链接 RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_FILENAME} !-l # 只有当上面的条件都满足时,才把请求转发到index.php RewriteRule ^ index.php [L]
给你解释下这些条件的作用:
!-f:判断请求的路径是不是不存在的文件(反过来就是,如果是真实存在的文件,就不执行后面的重写)!-d:判断请求的路径是不是不存在的目录!-l:判断请求的路径是不是不存在的符号链接(这个是可选的,如果你的项目里没用符号链接,也可以去掉这行)
另外再给你两个小提醒:
- 确认你的
asset/style.css文件确实存在于网站根目录下,路径没写错; - 检查文件和目录的权限:
style.css权限建议设为644,asset目录权限建议设为755,确保服务器能正常读取这些文件。
内容的提问来源于stack exchange,提问作者Elijah Cruz
相关产品推荐
相关产品推荐

