当前位置: 首页 > 面试题库 >

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

锺玺
2023-03-14
问题内容

我遵守规则 .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文件并让我们使用“相对路径”?


问题答案:

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

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

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

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



 类似资料:
  • 问题内容: 我正在尝试使用模式重写使用户友好的URL。我的问题是,在给URL提供“名称”之类的类别后,当我使用新的URL调用页面时,它无法加载CSS文件或图像。 我有一个类似的链接: 本地主机/ mywebsite /项目?id = 22 新链接就像 本地主机/ mywebsite /项目/22/myproject.project htaccess代码: (这可能不是100%正确,但我现在无法访问

  • 我需要访问页面中的图像、css和js文件,但我不知道如何编写。需要htaccess文件。 我用的是CodeIgniter。 矿山文件夹层次结构: 我目前的. htaccess是: 有了它,我就可以访问cms和站点控制器以及您的方法,我希望这样。 我在想象这样的事情: 感谢先进。

  • 问题内容: 我有一个隐藏的联系表单,单击该按钮即可进行部署。它的字段设置为CSS背景图像,它们的出现时间总是比已切换的div晚一点。 我在本节中使用了此代码段,但运气不好(清除缓存后): 我正在使用jQuery作为我的库,如果我也可以使用它来解决此问题,那将很酷。 多谢您的光临。 问题答案: 我可以确认我的原始代码似乎有效。我随便坚持使用错误路径的图像。

  • 在CodeIgniter中添加JavaScript和CSS(层叠样式表)文件非常简单。 你必须在根目录中创建JS和CSS文件夹,并复制JS文件夹中的所有.js文件和CSS文件夹中的.css文件,如图所示。 例如,假设您已经创建了一个JavaScript文件sample.js和一个CSS文件style.css 。 现在,要将这些文件添加到视图中,请在控制器中加载URL帮助程序,如下所示。 $this

  • 问题内容: 我刚刚开始学习Node.js,并编写了最简单的服务器,如下所示: 和服务器: 我的问题是,第一次运行此代码时,它运行良好- CSS和js加载没有问题。但是后来我在同一台服务器上同时使用PHP和Node.js(使用nginx)进行了实验。我失败了,因为我不需要太多(这只是为了好玩),所以我放弃并更改了所有更改以实现此目标设置(例如nginx- conf中的端口)。然后,在尝试再次运行此代

  • 学习JSP,遇到CSS/JS内容无法加载的问题。我有一个jsp页面,在那里我有使用标准html链接和脚本标记引用的引导css和js: 它们都不起作用,Chrome在控制台上给了我以下内容: 如果我使用include指令,它适用于css,但会将所有内容拉入文件: jsp具有以下@page和元标记: