在PHP MVC中,如何显示外部css、js和图像文件?
在PHP MVC中,如何显示外部css、js和图像文件在PHP MVC中,如何显示外部css、js和图像文件?,php,.htaccess,model-view-controller,Php,.htaccess,Model View Controller,在PHP MVC中,如何显示外部css、js和图像文件 RewriteEngine On RewriteCond %{REQUEST_URI} !-f RewriteCond %{REQUEST_URI} !-d RewriteCond %{REQUEST_URI} !-l RewriteRule ^(.+)$ index.php?url=$1 [QSA,L] 我无法显示任何外部文件 上面的代码匹配${REQUEST\u URI},例如,匹配所有URI,您可能希望匹配请求的文件名${REQUE
RewriteEngine On
RewriteCond %{REQUEST_URI} !-f
RewriteCond %{REQUEST_URI} !-d
RewriteCond %{REQUEST_URI} !-l
RewriteRule ^(.+)$ index.php?url=$1 [QSA,L]
我无法显示任何外部文件 上面的代码匹配
${REQUEST\u URI}
,例如,匹配所有URI,您可能希望匹配请求的文件名${REQUEST\u filename}
此外,上面的代码还匹配不存在的符号链接(“!-l
”)和不存在的目录(“!-d
”)
可能只有匹配不存在的文件名才能完美工作:
RewriteEngine On
RewriteCond ${REQUEST_FILENAME} !-f
RewriteRule ^(.+)$ index.php?url=$1
现在,只有在index.php所在的文件夹中物理上不存在的请求文件名才会被别名为index.php
为了提高速度,或者如果Apache拒绝显示静态css,您可以在给定目录上禁用重写引擎,例如:
<Directory "path/to/public_html">
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.+)$ index.php?url=$1
</Directory>
<Directory "path/to/public_html/static">
RewriteEngine Off
</Directory>
重新启动发动机
重写cond%{REQUEST_FILENAME}-F
重写规则^(+)$index.php?url=$1
发动机熄火
如果上面的例子不起作用,目录的顺序可能是相反的。还要确保将其添加到.htaccess文件或
-标记中