【发布时间】:2021-09-05 11:23:53
【问题描述】:
我想在我的网站上显示某些内容。我根据 URL 参数选择内容,例如 page=about。这很好用,我的 URL 看起来像 example.com/mysite/index.php?page=about。我的问题是我希望我的 URL 读取 example.com/mysite/about,其中最后一部分是页面参数的名称。
我正在尝试通过 htaccess 执行此操作。这是我的确切代码:
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?page=$1 [L,QSA]
我的页面和 URL 结构都没有变化。 URL 仍为 ...index.php?page=about。难道我做错了什么?我尝试了很多不同的方法,但仍然得到相同的结果。我也尝试过简单地这样做,没有任何变化:
RewriteEngine On
RewriteRule ^([a-z]+)\/([0-9]+)\/?$ index.php?page=$1 [NC]
我认为它不起作用,所以我尝试重定向到其他网站并且它起作用了。因此,htaccess 文件正在被读取并能够运行。
任何帮助都会有所帮助!
谢谢你, 血压
【问题讨论】:
-
mod_rewrite 在这里的工作是在内部重写到达服务器的请求。首先更改 HTML 代码中的链接指向的内容 - 这仍然是您的责任。
标签: php .htaccess url redirect structure