重写规则包含两个变量并将文本添加到URL

时间:2015-09-20 23:47:33

标签: php apache .htaccess mod-rewrite rewrite

我为我的网站创建了一个htaccess文件,用于将此http://www.example.com/fixture?id=1之类的网址转换为http://www.example.com/fixtures/1之类的网址。

我的htaccess文件:

RewriteCond %{SCRIPT_FILENAME} !-d
RewriteCond %{SCRIPT_FILENAME} !-f
RewriteRule ^fixtures/(\d+)*$ fixture.php?id=$1

这是我想要的方式,但不完全是SEO友好的,所以我想传递另外两个变量homeaway,如此http://www.example.com/fixture?id=1&home=Arsenal&away=Chelsea

然后将URL重写为“http://www.example.com/fixtures/arsenal-vs-chelsea

关于SO的重写规则有很多问题,但没有人讨论在变量之间添加一小部分文本。我怎么能这样做,以便我可以使用重写规则添加URL的vs部分?

1 个答案:

答案 0 :(得分:0)

您可以使用:

RewriteCond %{SCRIPT_FILENAME} !-d
RewriteCond %{SCRIPT_FILENAME} !-f
RewriteRule ^fixtures/([^/]+)-vs-([^/]+)/?$ fixture.php?home=$1&away=$2

重写为: http://www.example.com/fixture?home=Arsenal&away=Chelsea