[英]Rewrite rule takes in two variables and adds text to the URL
I've created an htaccess file for my website that converts a URL like this http://www.example.com/fixture?id=1
to something like http://www.example.com/fixtures/1
. 我创建了我的网站的htaccess文件,转换这样的URL
http://www.example.com/fixture?id=1
喜欢的东西http://www.example.com/fixtures/1
。
My htaccess file: 我的htaccess文件:
RewriteCond %{SCRIPT_FILENAME} !-d
RewriteCond %{SCRIPT_FILENAME} !-f
RewriteRule ^fixtures/(\d+)*$ fixture.php?id=$1
That works how I want it, but isn't exactly SEO friendly, so I'd like to pass in two more variables home
and away
like so http://www.example.com/fixture?id=1&home=Arsenal&away=Chelsea
. 那可以按我的意愿工作,但并不完全适合SEO,因此我想像下面这样传递另外两个变量
http://www.example.com/fixture?id=1&home=Arsenal&away=Chelsea
home
& away
http://www.example.com/fixture?id=1&home=Arsenal&away=Chelsea
。
Then rewrite the URL to look like ` http://www.example.com/fixtures/arsenal-vs-chelsea . 然后将URL改写为` http://www.example.com/fixtures/arsenal-vs-chelsea 。
There are many questions about rewrite rules on SO, but none discuss adding a small portion of text between variables. 关于SO的重写规则有很多问题,但是没有一个讨论在变量之间添加一小部分文本。 How could I make it so that I could add the
vs
portion of the URL using a rewrite rule? 如何做到这一点,以便可以使用重写规则添加URL的
vs
部分?
You can use: 您可以使用:
RewriteCond %{SCRIPT_FILENAME} !-d
RewriteCond %{SCRIPT_FILENAME} !-f
RewriteRule ^fixtures/([^/]+)-vs-([^/]+)/?$ fixture.php?home=$1&away=$2
Rewrite to: http://www.example.com/fixture?home=Arsenal&away=Chelsea
重写为:
http://www.example.com/fixture?home=Arsenal&away=Chelsea
: http://www.example.com/fixture?home=Arsenal&away=Chelsea
home=Arsenal&away=Chelsea
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.