php – .htaccess RewriteRule还重写我的css,js和图像文件.怎么忽略这些?

前端之家收集整理的这篇文章主要介绍了php – .htaccess RewriteRule还重写我的css,js和图像文件.怎么忽略这些?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我希望当URL中的用户输入 http://example.com/abc/123/jon/实际显示文件 http://example.com/abc.php?id=123&name=jon时,可以通过将这些行添加到htaccess文件中来轻松完成:
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteRule ^abc/(.*)/(.*)/ abc.PHP?id=$1&name=$2 [L]

但我的abc.PHP文件有一些(css,js)文件

<link href="css/style.css" rel="stylesheet">
<script src="js/jquery-1.10.2.js"></script>

和图像如:img / logo.png

但由于我的.htaccess文件,它在这里搜索style.css:http://example.com/abc/123/jon/css/style.css
而不是http://example.com/css/style.css和类似的js和图像.

我已经在这里尝试了许多类似的答案,但没有一个为我工作.我正在寻找.htaccess解决方案.

你可以用它:
RewriteEngine on
# not rewrite css,js and images
RewriteCond %{REQUEST_URI} !\.(?:css|js|jpe?g|gif|png)$[NC]
RewriteRule ^abc/(.+)/(.+)/ abc.PHP?id=$1&name=$2 [L]

# rewrite css,js and images,from root
RewriteRule ^abc/[^/]+/[^/]+/(.+)$$1  [L]

如果您的最终css(或js)目录不是root用户,则可以在最后$1之前添加路径.现在是:/css/style.css与/abc/xxx/yyy/css/style.css

猜你在找的PHP相关文章