徐友好的urlcss img js不工作

我想让我的url成为SEO Friendly URL。 我试图通过重写规则编辑.htaccess文件

RewriteRule ^swift-details/([0-9]+)/([0-9a-zA-Z_-]+)$ swift-details.php?id=$1 [NC,L] RewriteRule ^swift-details/(css|js|img)/(.*)?$ /$1/$2 [L,QSA,R=301] 

它的路由正确的URL,但在该页面CSS JS和图像不起作用。

示例url:

http://www.bankhints.com/swift-details/2/abblinbb

你不需要第二个重写规则。 你的CSS / JSpath与你当前的位置都是“相对的”。

你的CSS存在于这里:/css/normalize.css

你的页面在这里:/swift-details/2/abblinbb/css/normalize.css

所有你需要的是在你的CSS / JSpath之前的“正斜杠”。

这是因为你的相对URI有其基础改变。 最初的基础是/当页面是/swift-details.php?id=foo ,浏览器正确地填充与/ base的相对链接。 但是,当浏览器转到像/swift/details/foo这样的页面时,基地突然变成了/swift/并且它试图在所有的相对URL之前附加这个页面,因此没有加载它们。

您可以将链接设置为绝对path,也可以更改网页标题中的URI基础(位于<head> </head>标记之间):

 <base href="/">