Можно ли установить просвет или laravel только в подкаталог

У меня есть существующий сайт \ приложение. Я хочу создать JSON API, используя люмен в подкаталоге - что-то вроде /api/,

Как установить lumen или laravel только в подкаталоге веб-сайта?

2 ответа

Решение

Попробуйте использовать Alias ​​в вашем Apache Conf (VirtualHost):

Alias /api /path/to/api/public
<Directory /path/to/api/public>
    Allowoverride All 
    Options Indexes FollowSymLinks Includes
    Order allow,deny
    Allow from all
</Directory>

Кроме того, поскольку Lumen получает неправильный путь при использовании из подкаталога, вам нужно изменить следующую строку в Lumens public/index.php: from $app->run(); в $app->run($app->make('request'));

Перенаправить запрос с помощью.htaccess (если вы не можете изменить apache conf):

RewriteRule ^api/(.*)$ /api/public/$1 [L]

используйте группу с префиксом в вашем app/Http/router.php, чтобы удалить подпапку:

$app->group(['prefix' => 'api'], function () use ($app) {
  $app->get('/', function () use ($app) {
      return $app->version();
  });
});
Другие вопросы по тегам