我已经将 htaccess 用于这样的事情domain.com/bacaberita.php -> domain.com/baca-berita我需要像这样传递get variabledomain.com/bacaberita.php?id=xy0001如何隐藏变量 id 以便 url 成为domain.com/baca-berita/xyz0001我正在使用 htacces 代码RewriteRule ^baca-berita bacaberita.php
RewriteRule ^baca-berita/(.*) bacaberita.php?id=$1但它抛出 id 为空我只尝试过这段代码RewriteRule ^baca-berita/(.*) bacaberita.php?id=$1它可以工作,但不能在页面中调用 css 和所有图像文件
1 回答

慕婉清6462132
TA贡献1804条经验 获得超2个赞
您想在重写规则之前放置一些重写条件以忽略这些资产文件。
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !/assets
RewriteRule ^baca-berita/(.*) bacaberita.php?id=$1
这告诉服务器检查文件或目录是否存在,如果在这些目录中,则在重写时忽略它们。
更新
您还想确保您的内部资产bacaberita.php是从站点的根目录链接的,而不是相对链接。您可以通过确保始终/在开头使用 a 来做到这一点:
<!-- incorrect: looks for styles in domain.com/bacaberita/assets -->
<link rel="stylesheet" type="text/css" href="assets/css/styles.css">
<!-- correct: looks for styles in domain.com/assets -->
<link rel="stylesheet" type="text/css" href="/assets/css/styles.css">
- 1 回答
- 0 关注
- 141 浏览
添加回答
举报
0/150
提交
取消