使用 apache 部署 laravel Rest API

Deploying laravel Rest API using apache

我正在尝试在服务器上部署我的项目,它是一个 REST API。服务器是 运行ning apache 并且工作正常(我用 hello world 脚本测试了它)。

我的项目在 /var/API。 我已将我的 public 文件夹从我的项目移动到我的文档根目录 (/var/www/)。 我已经从我的 laravel 项目中更改了我的 index.php 文档,并将它与我的 public/.htaccess 一起添加到我的文档根目录中。我遇到的问题在于我在下面发布的更改后的 index.php 文件。

如果我 运行 调用 get API,我的浏览器会出现 404 错误。如果我只是 运行 服务器本身的 ip,我会收到 500 错误。

<?php

define('LARAVEL_START', microtime(true));

require __DIR__.'/var/API/vendor/autoload.php';

$app = require_once __DIR__.'/var/API/bootstrap/app.php';

$kernel = $app->make(Illuminate\Contracts\Http\Kernel::class);

$response = $kernel->handle(
    $request = Illuminate\Http\Request::capture()
);

$response->send();

$kernel->terminate($request, $response);

I've moved my public folder from my project to my document root

你不应该从项目中移动 public 文件夹,它会破坏很多东西。保持项目结构不变,并将您的 apache DocumentRoot 更改为指向 public 文件夹。

我会将项目从 /var/API 移动到 /var/www/API 并将 apache 配置中的 DocumentRoot 更改为 /var/www/API/public