.htaccess RewriteRule重写我的css,js和图像文件

时间:2016-02-04 08:24:40

标签: .htaccess mod-rewrite url-rewriting

我想将网址从http://localhost/test/page1.html更改为http://localhost/test/page1/,我需要在网址末尾添加斜杠。

这适用于以下.htacess规则

RewriteRule ^(.+)/$ $1.html [L]
RewriteCond %{REQUEST_FILENAME}.html -f
RewriteRule ^ %{REQUEST_URI}.html [NC,L]

它也改变了我的路径css,js ......

从localhost / test / css / custom.css到 本地主机/测试/第1页/ CSS / custom.css

我想了解如何从css路径中删除/ page1 /文件夹

1 个答案:

答案 0 :(得分:2)

这是因为您的相对URI的基数已更改。最初,当页面为/时,基数为/test/page1.html,浏览器会正确填充/基础的相对链接。但是当浏览器转到/test/page1/这样的页面时,基础突然变为/test/page1/,它会尝试将其附加到所有相对URL之前,因此它们都不会加载。

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

<base href="/">