使用url的一部分作为可获取变量,而不是通配符

时间:2018-10-25 10:15:09

标签: .htaccess mod-rewrite server url-rewriting

我正在尝试$_GET的一部分重写的URL,但它似乎仅在使用通配符(.*)时才起作用。

所以这对我有用:

RewriteRule         ^info/(.*)$ _extern/web/listing.php?alias=$1 [QSA,L]

但这不是:

RewriteRule         ^winkels$ _extern/web/listing.php?alias=$1 [QSA,L]

在info / winkels上,我可以检索别名,当我回显别名时,它会显示“ winkels”,但是在/ winkels上,它为空。

为什么?

1 个答案:

答案 0 :(得分:1)

您忘了实际捕获要移交的URL的一部分。

尝试使用该重写规则:

RewriteRule ^/?(winkels)$ _extern/web/listing.php?alias=$1 [QSA,L]

注意:没有捕获括号$1只会是空的...