Apache 如何将/api/*请求重定向到另一个文件?

Apache 如何将/api/*请求重定向到另一个文件?,apache,.htaccess,mod-rewrite,laravel,Apache,.htaccess,Mod Rewrite,Laravel,我一直在为我的API服务器使用Laravel,但是它需要很多资源来完成小任务,我们希望在不同的框架中编写API。除非出于可伸缩性的目的完全分离我们的API,否则我是否可以临时将所有/API/*请求重定向到API.php 这是我们的文件夹结构: app vendor public index.php .htaccess api.php 这是我们的.htaccess <IfModule mod_rewrite.c> <IfModule mod_n

我一直在为我的API服务器使用Laravel,但是它需要很多资源来完成小任务,我们希望在不同的框架中编写API。除非出于可伸缩性的目的完全分离我们的API,否则我是否可以临时将所有
/API/*
请求重定向到
API.php

这是我们的文件夹结构:

app
vendor
public
    index.php
    .htaccess
    api.php
这是我们的
.htaccess

<IfModule mod_rewrite.c>

    <IfModule mod_negotiation.c>
        Options -MultiViews
    </IfModule>

    RewriteEngine On

    # Redirect Trailing Slashes...
    RewriteRule ^(.*)/$ /$1 [L,R=301]

    # Excludes existing directories and files
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f

    # Handle Front Controller...
    RewriteRule ^ index.php [L]

</IfModule>

选项-多视图
重新启动发动机
#重定向尾部斜杠。。。
重写规则^(.*)/$/$1[L,R=301]
#排除现有目录和文件
重写cond%{REQUEST_FILENAME}-D
重写cond%{REQUEST_FILENAME}-F
#处理前控制器。。。
重写规则^index.php[L]

就在
R=301
规则的下方您可以添加此规则:

RewriteRule ^api/ api.php [L,NC]

作为未来的注意事项,Laravel 5将具有路由缓存功能,这将有助于加快请求:问题不在于路由缓存,而在于Laravel的速度非常慢。今天我用Klein重写了我的API,每个请求只需要3-10毫秒。仅在启动期间,Laravel就需要70毫秒的时间和大约5MB的资源。无论如何,
route:cache
是一个非常无意义的解决方案。我可以在Laravel前面涂上清漆,为那些“静态”页面提供服务,它甚至不会加载Laravel。无论如何,谢谢你提供的信息。