URL重写:CSS,JS和图像未加载

问题描述

不要偷懒,将资源中的相对URI更改为根目录绝对路径,例如/css/style.css。这是最好的。

您可以变得更聪明并使用正则表达式,并替换所需的所有文件,这就像几个衬板就可以了。可以更改几个地方?您应该使用模板。

这应该可以,但是我不会这样。

RewriteRule ^detail/(css|js|img)/(.*)?$ /$1/$2 [L,QSA,R=301]

解决方法

我遵守规则 .htaccess

Options +FollowSymLinks

RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} -f [OR]

RewriteRule ^detail/([0-9]+)/?$ detail.php?id=$1

它将http://localhost/detail/123URL
重定向到http://localhost/detail.php?id=123。页面成功重定向,但问题CSS,JS,and images未加载,

CSS,js文件位于http://localhost/css/和下http://localhost/js/

一种解决方案是使用 绝对路径 (例如/ CSS或/ js而不是CSS /,/
js,但这似乎不是一个可靠的解决方案,因为我们必须在所有文件上进行更改,

是否有其他.htaccess基于规则的解决方案,这些解决方案独立于编辑所有PHP文件并让我们使用“相对路径”?