【发布时间】:2020-01-26 11:28:52
【问题描述】:
我最终完成了基于 Laravel 的 REST API。 将 API 上传到共享虚拟主机后,我每次都得到 来自 RouteCollection 的 NotFoundHttpException 错误。
公用文件夹工作正常且显示正常。但是一旦我尝试 使用邮递员的 API 我得到以下错误:
{
"message": "",
"exception": "Symfony\\Component\\HttpKernel\\Exception\\NotFoundHttpException",
"file": "/var/www/vhosts/cloud1.openhandwerk.de/httpdocs/API_oH/Connector/vendor/laravel/framework/src/Illuminate/Routing/RouteCollection.php",
"line": 179,
"trace": [
现在当我通过浏览器访问该页面时,我只会收到 404 错误。
我的 api.php 文件
<?php
use Illuminate\Http\Request;
Route::prefix("v1")->group(function() {
Route::post('login', 'Api\v1\UserController@login');
Route::post('register', 'Api\v1\UserController@register');
Route::group(['middleware' => 'auth:api'], function(){
// Customers
Route::get("customers", 'Api\v1\CustomerController@index');
// Route::get("customer/{id}", "API/v1/CustomerController@show");
// Route::post("customer", "API/v1/CustomerController@store");
// Route::put("customers", "API/v1/CustomerController@store");
// Route::delete("customers", "API/v1/CustomerController@destroy");
});
});
【问题讨论】:
-
你怎么称呼路线??
-
@zahidhasanemon 你是什么意思?它来自命名空间..顺便说一句,它在本地工作,就在我将它上传到共享主机时,它会出错
-
我的意思是你是如何访问网址的?
/api/v1/customers?? -
@zahidhasanemon 嘿抱歉,我发现错误取决于您推测的 URL。在我的本地机器上,我有一个 virtualHost 作为域设置。所以我通过 api.test/v1/customers 访问 API...但在服务器上它在子目录中
-
那么如果api是这样的domain.com/folder/api/,我怎么能在linux服务器上使用api呢