问题标签 [laravel-envoyer]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
622 浏览

laravel - Laravel - Envoyer 目录结构的通用 Apache 500 错误

我正在尝试使用 Envoyer 将我的 Laravel 5 站点部署到我的 VPS。我将站点的 Apache 设置中的文档根更改为/current/public(下面的设置),当我这样做时,我收到一个通用的 Apache 500 错误。如果我使用旧public目录,一切都会正确加载。

我也试过chmod 777 -R storage了,没有运气。Laravel 日志中没有日志条目,一切都部署得很好,没有错误。

我确实注意到,如果我创建一个纯 HTML 文档并通过 Envoyer 部署它,我可以直接使用/current/public文档根目录访问它,与 Laravel 相关的任何内容(并且仅使用current/public)都会导致 500。

想法?符号链接会是一个可能的解决方案吗?奇怪的是,我在另一个 Envoyer 站点上的 Forge 配置将文档根设置为public,但current/public我看不到任何符号链接。由于某种原因,它可能被设置为current/public并且只是不显示。

0 投票
1 回答
944 浏览

laravel - 为什么 Voyager 在直播时不显示我的管理仪表板?| 锻造、航海者和 Laravel

我正在创建一个 Laravel 电子商务应用程序。我在 youtube 上关注本教程:https ://www.youtube.com/watch?v=L3EbWJmmyjo&list=PLEhEHUEU3x5oPTli631ZX9cxl6cU_sDaR&index=18

对于网站的管理部分,我使用的是 Voyager。在我的本地主机上,一切似乎都运行良好:

登陆页面(http://localhost:8000):

在此处输入图像描述

然后当我输入链接:http://localhost:8000/admin 时,它会将我带到 http://localhost:8000/admin/login:

在此处输入图像描述

然后我输入这些凭据(图像也显示数据库)。如您所见,凭据匹配,当我按下登录时,我被带到仪表板:

在此处输入图像描述

在此处输入图像描述

在此处输入图像描述

到目前为止所有的屏幕截图都在我的本地主机上。当我尝试在我的实时网站上安装 Voyager 时,它停止工作!这是我的实时网址:https ://janinevalerieaesthetics.com

我正在使用 Forge 和 Envoyer 进行托管。他们正在使用我的 GitLab 帐户进行链接:https ://gitlab.com/rossi99/salonwebsite

我使用 ssh 通过我的终端使用以下链接连接到我的 Forge 服务器:ssh forge@janinevalerieaesthetics.com

然后我一直 cd 进入当前目录(包含我所有文件夹的目录,包括“供应商”文件和“工匠”),然后我使用 php artisan 命令安装 voyager 包(https://voyager- docs.devdojo.com/getting-started/installation):

  1. 更改 .env 文件:

安装步骤:

我的.env:

安装步骤:

我的.env:

我从我的终端 forge@salonWebsite:~/janinevalerieaesthetics.com/current$ 运行这个命令:

然后我使用这个命令从同一个终端创建一个用户:

这是我的实时数据库表:

在此处输入图像描述

这是角色表(您可以看到 ID 为 1 的用户是管理员):

在此处输入图像描述

但是当我导航到https://janinevalerieaesthetics.com/admin/login时,它会显示登录屏幕:

在此处输入图像描述

但是,当我使用正确的凭据登录时,它不是让我登录并显示管理仪表板,而是让我登录并带我进入登录页面,当我尝试手动登录时,它只会将我重定向到登录页面页:

在此处输入图像描述

0 投票
1 回答
281 浏览

php - 升级到 Laravel 8 后的 Guzzle/Nexmo 问题

我最近对这个网络应用程序进行了相当大的更新,并且在大多数情况下它顺利进行了......直到应用程序尝试从登台/生产发送短信通知。

从 laravel 7.x 升级到 8.x 非常简单直接。同时我们也安装了 Laravel Horizo​​n。一切都按计划进行,并且在本地一切正常。

但是,当我们部署到登台/生产时,排队的 SMS 通知会失败,并出现以下异常:

ReflectionException:/home/forge/dev.example.com/releases/20210609194554/vendor/laravel/framework/src/Illuminate/Container/Container.php:836 中不存在类 Http\Adapter\Guzzle6\Client

查看堆栈跟踪,我们可以看到 Nexmo 是罪魁祸首:

#5 /home/forge/dev.example.com/releases/20210609194554/vendor/nexmo/laravel/src/NexmoServiceProvider.php(150): Illuminate\Foundation\Application->make()

然而,在我们的 composer.json 文件中,我们需要 Guzzle 7 具有以下内容:

"guzzlehttp/guzzle": "^7.3",

在这一点上再次值得一提的是,我在本地发送 SMS 没有问题,本地和暂存环境的主要区别在于,我在本地使用 Laravel Valet,而 Staging 使用 Laravel Envoyer。

到目前为止我已经尝试过:

  • 更改"guzzlehttp/guzzle": "^7.3""guzzlehttp/guzzle": "^6.5|^7.3"
  • 手动运行php artisan horizon:purgephp artisan horizon:terminate在部署挂钩中运行。
  • 在 forge 上重新启动 laravel Horizo​​n 守护进程。
  • php artisan queue:restart
  • 跑步composer dump-autoloadcomposer dump-autoload -o
  • 从 current/ 中删除 composer.lock 和 vendor/ 目录,然后运行composer install
  • 重新启动 PHP、Nginx,并最终重新启动整个服务器 :(

和更多...

任何帮助是极大的赞赏

更新如下:

完整的composer.json:

此外,我的 nexmo 配置文件没有任何用于 http_client 的内容,也许这是我错过的升级步骤。因此,对于nexmo 的http_client,我的.env 文件中没有任何内容。我也将开始研究这个。

nexmo.php

0 投票
0 回答
10 浏览

laravel - Laravel Envoyer Bitbucket 权限问题

如果有人在使用 Envoyer,那么他们可以在这里帮助我。

我使用 Bitbucket 作为版本控制,并与 Envoyer 建立了联系。

当我们创建项目并插入存储库详细信息时,它会给出错误,您确定您有权访问它吗?

我们不能继续使用私有 bitbucket 存储库吗?

我们是否总是需要公开存储库?