微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

httpd url 重写规则问题

如何解决httpd url 重写规则问题

我正在尝试修复一个旧项目,该项目将 .htaccess 文件用于 httpd。

.htaccess 有两个重写路径的规则,如果路径中没有日期,它将转到索引,否则将列出。问题是列表路径不起作用,它进入索引,如果我注释掉索引路径列表路径开始工作,取消注释它开始进入索引。

这是 v1 的规则:

RewriteEngine On
RewriteRule ^m/([a-zA-Z0-9]+)/(\d{4}-\d{2}-\d{2})/? m/list.PHP?list_id=$1&date=$2 [QSA,L]
 
RewriteEngine On
RewriteRule ^m/([a-zA-Z0-9]+)/? m/index.PHP?list_id=$1 [QSA,L]

这是规则 v2:

RewriteEngine On
RewriteRule ^m/([a-zA-Z0-9]+)/? m/index.PHP?list_id=$1 [QSA,L]

RewriteEngine On
RewriteRule ^m/([a-zA-Z0-9]+)/(\d{4}-\d{2}-\d{2})/? m/list.PHP?list_id=$1&date=$2 [QSA,L]
 

以下是两个测试网址:

http://www.example.com/m/blas3as 应该转到 index.PHP(这适用于顶部的规则)

http://www.example.com/m/blas3as/2021-01-01 -> list.PHP(此链接无效,转到 index.PHP

如果我注释掉:

#RewriteEngine On
#RewriteRule ^m/([a-zA-Z0-9]+)/? m/index.PHP?list_id=$1 [QSA,L]

http://www.example.com/m/blas3as/2021-01-01 -> list.PHP(此链接开始工作)

显然另一个链接停止了。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。