.htaccess名称中的斜杠获取变量问题

劫机者

您好,很抱歉打扰您,我尝试四处张望,但找不到解决方案,而且我真的不知道如何以及是否有可能用rewriterule做类似的事情。

这是htaccess文件中对我的问题感兴趣的部分:

RewriteRule ^ pagename /([[^ /] +)-([^ /] +)mypage.php?name = $ 1&id = $ 2 [NC,L]

example.com/mypage/dogarticle-800ad43

所以我在php中的变量会像

$ _GET [“ name”] = dogarticle和$ _GET [“ name”] = 800ad43

到目前为止,一切都很好,但是,如果一篇文章包含斜杠,我将无法再获得正确的变量,例如

example.com/mypage/animals/dogandcat-800ad44

其中动物/ dogandcat应该是名称,我收到以下get vars:

$ _GET [“ name”] =动物$ _GET [“ name”] =狗和猫

在这里,我该怎么办才能收到以下get var:

$ _GET [“ name”] =动物/狗和猫$ _GET [“ name”] = 800ad44>

不能真正找到解决方案,可能不是我今天最好的。

谢谢

编辑:在名称中可以有很多斜线示例:

example.com/mypage/animals/dogandcat/squirrel/someotheranimal-800ad44

十字架

您可以使用:

RewriteRule ^pagename/(.+)-([^/]+)$ mypage.php?name=$1&id=$2 [NC,L]

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章