我正试图在Vercel中部署Laravel 8项目,然而,我经常面临这个错误:
错误:没有名为"的输出目录;dist";在生成之后找到已完成。您可以在项目中配置输出目录设置。
我遵循了这里提到的步骤,但不幸的是,它显示了相同的错误。以前有人经历过这样的问题吗?
只需创建;dist";项目根目录中的目录/文件夹。
- 在您的Vercel项目设置中,转到;生成&发展设置";部分
- 在";构建命令";字段中,输入命令以构建Laravel项目。此命令通常是composer install后接的命令通过npm安装和npm运行prod,如果您使用的是Laravel Mix。如果你没有使用Laravel Mix,请将最后一个命令替换为您自己的命令build命令
- 在";输出目录";字段,输入目录的路径您的Laravel项目的建造地。这通常是公开的Laravel项目。保存您的生成设置
要解决这个问题,您必须将输出目录设置为"api";。
最简单的方法是在vercel.json文件中更改vercel.php版本。像这样-
"api/index.php": { "runtime": "vercel-php@0.6.0" }
还将输出目录更改为";api";。这是我解决这个问题的方法。希望这对你有帮助。
按照以下步骤
- 创建一个名为api的文件夹
- 在文件夹中,创建一个名为index.php的文件
- 在index.php文件中编写以下内容
<?php require __DIR__ . '/../public/index.php';
-
在根目录中,创建一个名为.vercilignore.的文件
-
在创建的文件中,写入以下内容:
/供应商
-
创建一个名为dist 的空文件夹
-
创建一个名为vercel.json 的文件
-
在创建的文件中写入以下
{
{"version": 2,
"framework": "null",
"functions":{
"api/index.php": { "runtime": "vercel-php@0.6.0"}
},
"routes": [
{
"src": "/(.*)",
"dest": "/api/index.php"
}
],
"env": {
"APP_ENV": "production",
"APP_DEBUG": "true",
"APP_URL": "https://akos-portfolio.vercel.app",
"APP_CONFIG_CACHE": "/tmp/config.php",
"APP_EVENTS_CACHE": "/tmp/events.php",
"APP_PACKAGES_CACHE": "/tmp/packages.php",
"APP_ROUTES_CACHE": "/tmp/routes.php",
"APP_SERVICES_CACHE": "/tmp/services.php",
"VIEW_COMPILED_PATH": "/tmp",
"CACHE_DRIVER": "array",
"LOG_CHANNEL": "stderr",
"SESSION_DRIVER": "cookie"
}}
}
您现在可以将文件上传到vercel。
手表https://www.youtube.com/watch?v=dERa0R2zLqc&t=103秒。了解如何进行