GET 请求时 404 Laravel 9

404 on GET request Laravel 9

我正在使用 Laravel 的新版本开发一个项目。我的其他项目都是以前的版本。我尝试了每一种 artisan clean 方法来使一切都清楚。我检查了服务器要求,这与我 运行 我的其他 Laravel 8 项目的要求完全相同。但是当我通过 Postman 请求我的 API 时,它 return 是一个 404 页面而不是实际操作。

路线

GET|HEAD   api/token ... generated::*** › UserController@tokenRequest

api.php

Route::get('token', [UserController::class, 'tokenRequest']);

我 return 一个带有令牌的简单响应。如果有 PHP 错误,我会看到它,而不是 return 和 404,这很奇怪。我的其他项目也有同样的问题,但这只是一个 mod_rewrite 问题,但我都检查了这些选项。每个都在 .conf 中正确设置。我在我的 Ubuntu 20.04 服务器上使用 apache,就像我的其他项目一样。唯一的区别是 Laravel 版本。

我使用的

URL:

https://example.com/directory/api/token

Public 目录 URL 工作正常。

https://example.com/directory/public

自定义域.conf

<VirtualHost *:80>
ServerName example.com
ServerAlias www.example.com
ServerAdmin webmaster@domain1.com
DocumentRoot /var/www/html

<Directory /var/www/html>
    Options -Indexes +FollowSymLinks
    AllowOverride All
</Directory>

ErrorLog ${APACHE_LOG_DIR}/example.com-error.log
CustomLog ${APACHE_LOG_DIR}/example.com.log combined

我通常为每个项目设置虚拟主机,这对我来说是这样的:

<VirtualHost *:80>
ServerName example.com
ServerAlias www.example.com
ServerAdmin webmaster@domain1.com
DocumentRoot /var/www/html/example.com/public

<Directory "/var/www/html/example.com/public">
    AllowOverride All
    ReWriteEngine On
    Options Indexes MultiViews FollowSymLinks
    Order allow,deny
    allow from all
    Require all granted
</Directory>

ErrorLog ${APACHE_LOG_DIR}/example.com-error.log
CustomLog ${APACHE_LOG_DIR}/example.com.log combined

这适用于我所有的 laravel 应用程序