Seo 友好的 URL 导致 CSS、IMG 和 JS 不起作用

Seo Friendly URL results in CSS IMG and JS not working

提问人: 提问时间:7/6/2015 最后编辑:MrWhite 更新时间:10/31/2020 访问量:4616

问:

我想将我的 URL 设置为 SEO 友好 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.example.com/swift-details/2/abblinbb
PHP HTML CSS APACHE . HT接入

评论

0赞 MrWhite 10/31/2020
另请参阅网站站长堆栈上的以下问题:.htaccess 重写 URL 导致缺少 CSS

答:

5赞 MaggsWeb 7/6/2015 #1

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

您的 CSS 存在于此处: /css/规范化.css

您的页面正在查看此处: /swift-details/2/abblinbb/css/normalize.css

您所需要的只是在 CSS/JS 路径之前使用“正斜杠”。

评论

0赞 7/6/2015
是的,我也得到了这个 <base href=“bankhints.com” />它解决了我的问题,谢谢。我接受了你的回答
10赞 Amit Verma 7/6/2015 #2

这是因为相对 URI 的基数已更改。本来基数是当页面是,浏览器会适当地用基数填充相对链接。但是,当浏览器转到一个页面时,就像 base 突然变成一样,它试图将其附加到所有相对 URL 的前面,因此它们都没有加载。//swift-details.php?id=foo//swift/details/foo/swift/

您可以将链接设置为绝对链接,也可以更改页面标题中的 URI 基数(在标签之间):<head> </head>

<base href="/">