gpt4 book ai didi

.htaccess RewriteRule 不工作,需要生成一个友好的 URL

转载 作者:塔克拉玛干 更新时间:2023-11-03 02:35:12 24 4
gpt4 key购买 nike

我有这个动态链接:

http://www.nortedigital.mx/article.php?id=36175&t=dobla_las_manos_el_snte__avala_reforma_educativa

我需要像这样转换为友好的 URL:

http://www.nortedigital.mx/36174/se_enriquecio_elba_en_sexenios_del_pan.html

我有这个 RewriteRule:

RewriteRule ^([^/]*)/([^/]*)\.html$ /article.php?id=$1&t=$2 [L]

但不起作用。请问,有人可以帮助我吗?

最佳答案

您必须在 RewriteCond 中捕获查询字符串并在 RewriteRule 中使用它

RewriteEngine On
RewriteCond %{QUERY_STRING} ^id=(\d+)&t=(.+)$
RewriteRule ^/?article\.php$ /%1/%2.html? [R,L]

这会将客户端重定向到请求,即 /36174/se_enriquecio_elba_en_sexenios_del_pan.html。现在您必须为真实页面提供服务。为此,我们添加了一条额外的规则,类似于您在问题中已有的规则

RewriteRule ^/?(.+?)/(.+?)\.html$ /article.php?id=$1&t=$2 [L]

但是现在,有一个无休止的重定向循环。我们通过使用环境变量来打破这一点。这是完整的规则集

RewriteEngine On

RewriteCond %{ENV:REDIRECT_SEO} ^$
RewriteCond %{QUERY_STRING} ^id=(\d+)&t=(.+)$
RewriteRule ^/?article\.php$ /%1/%2.html? [R,L]

RewriteRule ^/?(.+?)/(.+?)\.html$ /article.php?id=$1&t=$2 [L,E=SEO:1]

只要未设置环境变量,此规则就会像上面那样进行重定向。并且从article.php服务真实页面,同时设置环境变量防止循环。

您也可以为此目的使用 cookie。但如果在客户端中禁用 cookie,那将会中断。

关于.htaccess RewriteRule 不工作,需要生成一个友好的 URL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15165666/

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