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



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

我在本地服务器上尝试了这条路线,它能在上运行

我的Procfile:

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

我的api文件:

Route::post('/users/register' , 'AppHttpControllersAuthController@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(的入口点。Web服务器将在内部重写URL以传递给此脚本(public中的.htaccess文件就是这样设置的(。

相关内容

  • 没有找到相关文章

最新更新