使用 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
我正在尝试在服务器上部署我的项目,它是一个 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