restful api php的Url重写
我已经在核心php中开发了API。为此,我在我的网站根目录上有一个单独的文件夹。命名为api,在该文件夹中有包含index.php文件的v1文件夹。 我正在像这样处理index.php上的所有api调用restful api php的Url重写,php,apache,.htaccess,api,mod-rewrite,Php,Apache,.htaccess,Api,Mod Rewrite,我已经在核心php中开发了API。为此,我在我的网站根目录上有一个单独的文件夹。命名为api,在该文件夹中有包含index.php文件的v1文件夹。 我正在像这样处理index.php上的所有api调用 if(isset($_POST['method'])){ $myApi = new MyApi(); $response = array(); switch($_POST['method']) { case 'login': $respon
if(isset($_POST['method'])){
$myApi = new MyApi();
$response = array();
switch($_POST['method'])
{
case 'login':
$response['result'] = $myApi ->login($_POST['email'],$_POST['password']);
break;
case 'verify':
$response['result'] = $myApi ->verify($_POST['email'],$_POST['password']);
break;
}
为此,我在每个请求的请求(作为POST)中发送方法名称。
我现在像这样访问API
site.com/api/v1/index.php(运行良好)。
但是我需要访问API我的函数名。
site.com/api/v1/login
我知道通过htaccess的方法,但我不清楚。我找了很多。对于给定的目录结构,我应该在htaccess文件中写入什么?
我应该把我的htaccess文件放在哪里;在站点的根目录或V1文件夹的根目录上
请共享?若要将
/api/v1/login
URI重写为->/api/v1/index.php
,请将此规则添加到目录中
RewriteEngine on
RewriteRule ^login$ index.php [L]
在doc root.htaccess或api
目录中是否有其他重写规则?没有。它仅在V1中存在。我在站点根目录中有一个名为web.config的文件,其中包含这个文件,它是IIS配置,而不是apache。确保您正在使用apache为这些文件提供服务。