gpt4 book ai didi

html - 在 .htaccess 上使用 RewriteRule 时的 CSS 问题

转载 作者:太空宇宙 更新时间:2023-11-03 17:31:00 25 4
gpt4 key购买 nike

我在本地和远程服务器上使用 RewriteRule 时遇到了一些问题。

这是我现在所处的情况:

localhost/puntvallesgit/index.php?seccion=nosaltres

这是实际的网址

我希望它重命名为:

localhost/puntvallesgit/nosaltres

localhost/puntvallesgit/nosaltres/

两个 url 都有效,意思是,它不会给我 404 或类似的东西,但是,对于第二个 (localhost/puntvallesgit/nosaltres/),没有正确加载 CSS 或 JS。

查看 html 代码,我可以看到在使用规则时,JS 和 CSS 的 url 路径更改为:

localhost/puntvallesgit/nosaltres/css/styles.css然而代码本身有这个:

<link href="./css/styles.css" rel="stylesheet">

我知道我正在将 url 重写为/nosaltres ... html 代码适应新的文件夹结构,但这不是预期的行为。

此外,在使用没有最后斜杠的 url 时 (localhost/puntvallesgit/nosaltres),它工作得很好(在 localhost 下)。

我可以使用绝对路径,但这不是最理想的做法,因为那样路径会从我的本地主机更改到我的远程服务器

这是我正在使用的 htaccess 重写:

<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{SCRIPT_FILENAME} !-d
RewriteCond %{SCRIPT_FILENAME} !-f

RewriteRule ^([^/]*)$ index.php?seccion=$1 [NC]
RewriteRule ^([^/]*)/$ index.php?seccion=$1 [NC]
</IfModule>

有什么建议吗?提前致谢

最佳答案

您可以在 <head> </head> 之间添加基础标签您网站的部分。然后您的 Assets 文件夹将从根目录读取。

<base href="/">

此外,rewritecond 仅适用于它之后的第一次重写。您可以通过这种方式压缩您的规则。

<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{SCRIPT_FILENAME} !-d
RewriteCond %{SCRIPT_FILENAME} !-f
RewriteRule ^([^/]*)/?$ index.php?seccion=$1 [NC,L]
</IfModule>

关于html - 在 .htaccess 上使用 RewriteRule 时的 CSS 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30568889/

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