在 Heroku 上上传我的 laravel 项目后找不到页面

Getting not found page after uploading my laravel project on Heroku

当我将我的 laravel 项目上传到 Heroku 主机并转到主页时,我发现 laravel 主页 (welcome.blade.php) 很好,但是当我尝试其中一个时routes 我得到一个页面,上面写着 NOT FOUND 现在我已经编辑了我的 Procfile 以将我重定向到路由文件夹然后当我尝试我的 api 路由之一时收到此消息请求的 URL 未在此服务器上找到。

我在本地服务器上试过这个路由,它有效

我的程序文件:

web: vendor/bin/heroku-php-apache2 routes/

我的 api 文件:

Route::post('/users/register' , 'App\Http\Controllers\AuthController@register') ;

我的 .env 文件

APP_NAME=Laravel
APP_ENV=local
APP_KEY=base64:PecXeFHeAtspGD2s79k4F5HNh2mwgJEC7B1j7/a5cPU=
APP_DEBUG=true
APP_URL=http://localhost

LOG_CHANNEL=stack
LOG_DEPRECATIONS_CHANNEL=null
LOG_LEVEL=debug

DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=storeappdb  
DB_USERNAME=root
DB_PASSWORD=

我的database.php文件

$DATABASE_URL=parse_url("uaodyzzuglhswm:f3e63e876b4eb6ffde66a69e7cc2942d639d0a98ad8107e5ab262c7219efc92d@ec2-54-164-241-193.compute-1.amazonaws.com:5432/d5jmfh2osra85q");

'default' => env('DB_CONNECTION', 'pgsql'),

  'pgsql' => [
            'driver' => 'pgsql',
            'url' => env('DATABASE_URL'),
            'host' => $DATABASE_URL['host'] , 
            'port' =>  $DATABASE_URL['port'] ,
            'database' => ltrim($DATABASE_URL['path'] , "/"),
            'username' => $DATABASE_URL['user'],
            'password' => $DATABASE_URL['pass'],
            'charset' => 'utf8',
            'prefix' => '',
            'prefix_indexes' => true,
            'schema' => 'public',
            'sslmode' => 'prefer',
        ],

您的文档根目录应该是应用程序的 public 文件夹。所以你的“Procfile”需要反映:

web: vendor/bin/heroku-php-apache2 public/

文档根目录设置为 public 文件夹,因为您的应用程序的唯一可访问部分是 public 中的内容(因此名称为 'public')。 public 中的 index.php 文件是您的应用程序(Front Loader 或 Front Controller)的入口点。网络服务器将在内部重写 URL 以传递给此脚本(这是 public 中的 .htaccess 文件正在设置的内容)。