gpt4 book ai didi

apache - url 重写不适用于相对路径

转载 作者:行者123 更新时间:2023-12-01 10:41:43 25 4
gpt4 key购买 nike

我是重写 url 的新手,我已经重写了我的 url,但是它导致页面中使用的所有相对路径出现问题,例如

<link href="style/style.css" rel="stylesheet">
<link href="images/icon.png" type="images/ico" rel="icon" />
<img src="images/test.png" id="test">

即使我已经为他们应用了以下重写规则,但我仍然在 firebug 控制台中发现 404 错误(第一个正在工作,但第二个对 relatvie 不起作用)

RewriteEngine On
RewriteRule ^raipur/([A-Za-z0-9-]+)/([0-9]+)$ /viewRestaurant.php?raipur=$1&id=$2
RewriteRule ^raipur/([A-Za-z0-9-]+)/([A-za-z]+)/ /$2/

我的控制台截图 this is console screenshot

我什至将我的重写规则调试成了 htaccess tester并根据需要在那里工作

最佳答案

您的链接都是相对链接。 "images/icon.png"而不是 "/images/icon.png" .因为您的网址更改了其网址基础:

/viewRestuarant.php
Base: /

/raipur/something/1234
Base: /raipur/something/

当浏览器看到如下链接时:images/icon.png它需要在其前面添加一个基本 URL,以便知道资源所在的位置。默认情况下,它根据在地址栏中看到的 URL 使用主机和基础。由于这显然不是这些资源中的任何一个,因此您需要将链接设为绝对 URL,例如:/images/icon.pnghttp://example.com/images/icon.png或将显式相对 URL 基添加到页面标题中(在 <head> </head> 标记之间):

<base href="/" />

关于apache - url 重写不适用于相对路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29658441/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com