Mod rewrite 重写规则以接受3个参数,但不接受第2个&;第三个参数是可选的

Mod rewrite 重写规则以接受3个参数,但不接受第2个&;第三个参数是可选的,mod-rewrite,Mod Rewrite,我有这个规则- mydomain.com/MyFolder/parameter-1 htaccess文件位于[MyFolder]内,它只接受一个参数 如何执行重写规则以接受3个参数,但第2个和第3个参数是可选的,因此以下4个URL都是可能的 RewriteRule ^([a-z0-9\-]+)/?$ index.php?c=$1 [NC,L] 编辑:我会让PARAM3总是以[pop]这个词开头 谢谢RewriteRule^([a-z0-9\-]+)/?([a-z0-9\-]+)?/?([a-

我有这个规则-

mydomain.com/MyFolder/parameter-1
htaccess文件位于[MyFolder]内,它只接受一个参数

如何执行重写规则以接受3个参数,但第2个和第3个参数是可选的,因此以下4个URL都是可能的

RewriteRule ^([a-z0-9\-]+)/?$ index.php?c=$1 [NC,L]
编辑:我会让PARAM3总是以[pop]这个词开头

谢谢

RewriteRule^([a-z0-9\-]+)/?([a-z0-9\-]+)?/?([a-z0-9\-]+)?/?$index.php?c=$1&d=$2&e=$3[NC,L]

这将有助于:

mydomain.com/MyFolder/param-1/param-2/param-3
mydomain.com/MyFolder/param-1
mydomain.com/MyFolder/param-1/param-2
mydomain.com/MyFolder/param-1/param-3
在某些情况下,
$\u GET[d]
$\u GET[e]
具有as值
'

具有:

mydomain.com/MyFolder/param-1/param-2/param-3
mydomain.com/MyFolder/param-1
mydomain.com/MyFolder/param-1/param-2

对我来说似乎是不可能的,你怎么知道第二个是param 2还是param 3呢?

如果我让param 3总是以单词[pop]开头呢。我将如何改写规则。谢谢:
^([a-z0-9\-]+)/?([a-z0-9\-]+)?/?(pop[a-z0-9\-]+)?/?$
应该可以。哦,顺便说一下,如果你不想在GET值中使用它,请将
pop
放在
()
之外,
pop([a-z0-9\-]+)
你说“如果你不想在GET值中使用它”是什么意思?我需要一个重写规则,可以陷阱的4个可能的网址,我上面提到的。ThanksI的意思是您想要
$\u GET['e']
中的字符串“popValue”还是“Value”?第一个案例与(pop[a-z0-9\-]+)搭配,第二个案例与“pop[a-z0-9\-]+”搭配。将只捕获变量“()”中的内容。如果有效,请不要忘记验证答案!
mydomain.com/MyFolder/param-1/param-2
mydomain.com/MyFolder/param-1/param-3