如何使用.htaccess将漂亮的URI映射到单个API?

时间:2015-07-08 13:23:14

标签: php apache .htaccess mod-rewrite uri

说我想拥有像这样的URI, www.domainname.com/horses/italian/ www.domainname.com/cats/persian /

相应的API是, GetHorseDetails.php GetCatDetails.php

它们位于/ apis / fetch / ..... php

我面临的问题是我无法正确构建RewriteRule。

当我将API放在根文件夹中并使用时, RewriteRule ^(。*)$ GetHorseDetails.php / $

我可以进行GET domainname.com/horses/italian/并点击API。

总结, 1)我需要绑定参数。 2)我需要能够通过使用.htaccess

中的相对路径来访问API

从技术上讲, domaninname.com/horses/italian应该打到root / apis / fetch / GetHorseDetails.php

对此的任何帮助都将受到高度赞赏,因为我尝试了很多但是无济于事。

问候。

1 个答案:

答案 0 :(得分:0)

没有快速回答,所以我决定忘记我积累的所有内容并简单地进行实验。

Viola,这才有效!

RewriteRule ^ horses / italian /?$ apis / fetch / GetHorseDetails.php [NC,L]

显然问题在于相对路径。没有必要像" ./"那样放任何东西。在名字之前。并且不需要使用Alias将URL映射到文件系统。