标签: laravel-forge

Laravel 7 - 停止处理作业并清除队列

我在 AWS 上有一个生产系统并使用 Laravel Forge。有一个正在处理作业的默认队列。

我已经创建了许多作业,现在希望删除它们(因为它们需要很多小时才能完成,而且我意识到我的输入数据很糟糕)。我创建了一个具有良好数据的新作业,但只有在所有其他作业完成后才会对其进行处理。

如何删除所有作业?

redis它之前是使用队列驱动程序设置的。我不知道如何删除作业,因此我将驱动程序切换到database,并重新启动服务器,认为这至少会让作业停止处理。然而,令我沮丧的是,它们仍在继续处理:-(

我什至从 forge ui 中删除了工作程序并重新启动了服务器:作业仍在处理。

为什么作业会继续被处理?

我怎样才能阻止他们?

laravel laravel-forge laravel-queue laravel-7

11
推荐指数
1
解决办法
4万
查看次数

Laravel电子邮件,队列550错误(每秒电子邮件太多)

我们的电子邮件无法使用Redis Queue使用Laravel发送.

触发错误的代码是: ->onQueue('emails')

$job = (new SendNewEmail($sender, $recipients))->onQueue('emails');
$job_result = $this->dispatch($job);
Run Code Online (Sandbox Code Playgroud)

结合这项工作:

use InteractsWithQueue;
Run Code Online (Sandbox Code Playgroud)

我们的错误信息是:

Feb 09 17:15:57 laravel: message repeated 7947 times: [ production.ERROR: exception 'Swift_TransportException' with message 'Expected response code 354 but got code "550", with message "550 5.7.0 Requested action not taken: too many emails per second "' in /home/laravel/app/vendor/swiftmailer/swiftmailer/lib/classes/Swift/Transport/AbstractSmtpTransport.php:383 Stack trace: #0 /home/laravel/app/vendor/swiftmailer/swiftmailer/lib/classes/Swift/Transport/AbstractSmtpTransport.php(281): 
Run Code Online (Sandbox Code Playgroud)

我们的错误只发生在使用Sendgrid而不是Mailtrap,这会欺骗电子邮件发送.我和Sendgrid谈过,电子邮件从未触及他们的服务器,当我的错误发生时,他们的服务完全处于活动状态.所以,错误似乎在我的最后.

有什么想法吗?

php smtp swiftmailer laravel laravel-forge

9
推荐指数
3
解决办法
1万
查看次数

在Laravel 5.2中重新加载.env常量

我刚刚在.env文件中更改了一个常量.使用php-cli(通过修补程序)正确显示新值,但不能在我的Web应用程序(php-fpm)中显示.

到目前为止,我已按照建议尝试了一切:

sudo service nginx restart
sudo service php7.0-fpm restart
sudo service php7.0-fpm reload
Run Code Online (Sandbox Code Playgroud)

.

php artisan config:cache
Run Code Online (Sandbox Code Playgroud)

这将在bootstrap/cache/config.php中生成缓存配置文件

php artisan config:clear
Run Code Online (Sandbox Code Playgroud)

这将删除bootstrap/cache/config.php中的缓存配置文件

php artisan cache:clear
Run Code Online (Sandbox Code Playgroud)

究竟是做什么的?它清楚了什么类型的缓存?

php artisan clear-compiled
Run Code Online (Sandbox Code Playgroud)

这个清楚的编译类

composer dump-autoload
Run Code Online (Sandbox Code Playgroud)

这将生成/更新composer autoload文件.

我有一些不属于任何配置文件的.env变量.因此,运行任何工匠命令对我来说都是无用的.

上述php artisan命令都没有直接处理$ _ENV.

似乎$ _ENV存储在服务器中的某个位置,并且一旦填充了属性,laravel就无法更新它.

我发现的唯一解决方案是重启服务器.

我正在运行一个Laravel Forge实例.

laravel laravel-forge laravel-5.2

8
推荐指数
2
解决办法
8414
查看次数

JOB_TOO_BIG Pheanstalk - 可以做些什么?

在Laravel 4.2和Laravel Forge上

我犯了一个错误,不小心将一些代码推送到生产服务器上,但是有一个错误,它将一个作业推送到队列而不删除它一旦完成.现在我不能再推送队列中的任何东西,我得到:

Pheanstalk_Exception JOB_TOO_BIG:作业数据超出服务器强制限制

我能做什么?

php queue laravel pheanstalk laravel-forge

7
推荐指数
2
解决办法
6303
查看次数

使用Laravel Forge进行部署问题

我正在尝试使用Laravel Forge部署Laravel PHP项目.我已正确连接到github上的我的存储库.但是,当我点击部署时,如果我去网站的公共IP,我只看到:

"No input file specified."
Run Code Online (Sandbox Code Playgroud)

在页面上.

我不知道为什么会出现这种行为.

如果我转到最新的部署日志,我会看到:

/home/forge/.forge/provision-433327.sh: line 1: cd: /home/forge/default/laravel: No such file or directory
fatal: Not a git repository (or any of the parent directories): .git
Composer could not find a composer.json file in /home/forge
To initialize a project, please create a composer.json file as described in the http://getcomposer.org/ "Getting Started" section
Could not open input file: artisan
Run Code Online (Sandbox Code Playgroud)

但是,我的laravel文件夹中有一个composer.json文件....

有任何想法吗?先感谢您.

laravel-4 laravel-forge

6
推荐指数
1
解决办法
2592
查看次数

在laravel锻造和宅基地上慢慢下来

我不明白为什么在laravel forge和laravel宅基地上的guzzle请求真的很慢.我没有更改锻造和宅基地的默认服务器配置.

像这样的每个简单的请求......

$client = new GuzzleHttp\Client();
$response = $client->get('path-to-my-api');
Run Code Online (Sandbox Code Playgroud)

...大约需要150ms(在宅基地和锻造处).这附加在每个请求(相同的网络或互联网)上.我读了一些关于guzzle的帖子,对于每个用户来说似乎都非常快,但对我来说却不是.

版本:

  • curl 7.35.0(x86_64-pc-linux-gnu)libcurl/7.35.0 OpenSSL/1.0.1f zlib/1.2.8 libidn/1.28 librtmp/2.3
  • PHP版本5.6.0
  • Guzzle 5.1.0

真的很奇怪的是,当我这样做时(异步)......

$req = $client->createRequest('GET', 'path-to-my-api', ['future' => true]);

$client->send($req)->then(function ($response) {
});
Run Code Online (Sandbox Code Playgroud)

......大约需要10毫秒.这很好,但我不明白为什么.而且我不想执行异步请求.

也许我的时间测量是错误的,但我认为这是好的:我使用这样的PHP调试栏:

// .....

// synch
Debugbar::startMeasure('synch','SYNCH Request');
$response = $client->get('path-to-my-api');
Debugbar::stopMeasure('synch');

// asynch
Debugbar::startMeasure('asynch','ASYNCH Request');
$req = $client->createRequest('GET', 'path-to-my-api', ['future' => true]);

$client->send($req)->then(function ($response) {
    Debugbar::stopMeasure('asynch');
});
Run Code Online (Sandbox Code Playgroud)

我知道回答这个问题并不容易(因为它含糊不清),但我现在还不知道:(.如果你愿意,我可以编辑它.非常感谢.

php curl laravel guzzle laravel-forge

5
推荐指数
1
解决办法
1293
查看次数

Laravel Forge中的多个域到一个站点

是否可以让多个顶级域指向同一个站点?.com/.net/.eu等...

我在Laravel Forge创建了一个网站,你必须告诉他你的网站将要进入的域名.这适用于.com域名,但其他tld的呢?我是否必须创建多个站点,是否必须在服务器本身(DNS)上更改它或是否是其他任何方法?

laravel laravel-forge

5
推荐指数
1
解决办法
1969
查看次数

Laravel Forge + DigitalOcean - 添加仅对目录具有受限访问权限的 SFTP 用户

我在 DigitalOcean 液滴中使用 Laravel Forge。我需要向我的一个客户端授予对服务器上特定目录的 SFTP 访问权限。他只需要对该目录进行读/写访问,而我在设置方面遇到了问题。

我已经按照https://bensmann.no/restrict-sftp-users-to-home-folder/ 中的步骤操作,但我被卡住了,因为 Forge 不允许密码身份验证,只能通过公共/私有 SSH 密钥...

有人做过类似的事情吗?完成它的最佳方法是什么?

提前谢谢了。

sftp laravel digital-ocean laravel-forge laravel-5

5
推荐指数
1
解决办法
2107
查看次数

SSH 密钥已存在于 bitbucket 上

我试图将 laravel-forge 中服务器的 SSH 密钥添加到 bitbucket。ssh 密钥通常位于~/.ssh/id_rsa.publaravel-forge 终端内。Bitbucket 不允许我添加这个。通常通过单击“设置”下的“访问密钥”将其添加到 bitbucket 中。错误消息是:that key has already been added by a user。但我找不到团队中的其他用户添加了它。bitbucket 网站无法显示哪个用户添加了它。

bitbucket laravel-forge

5
推荐指数
1
解决办法
1424
查看次数

在 Forge 配置的服务器上将 Browsershot 与 Laravel 结合使用时出错

我将Browsershot(使用Puppeteer)与 Laravel 一起使用。我让它在本地开发环境(Mac、Laravel Valet)中完美运行,但是当在 Forge 配置的服务器上运行它时,我在日志文件中收到以下错误(我已用占位符替换了敏感 URL):

local.ERROR: The command "PATH=$PATH:/usr/local/bin NODE_PATH=`/usr/bin/node /usr/bin/npm root -g` /usr/bin/node '/home/forge/my-app.co.uk/vendor/spatie/browsershot/src/../bin/browser.js' '{"url":"https:\/\/my-test-site.com\/about.html","action":"screenshot","options":{"type":"png","path":"\/home\/forge\/my-app.com\/storage\/screenshots\/13\/full\/21.jpg","args":[],"viewport":{"width":1400,"height":1080},"fullPage":true,"waitUntil":"networkidle0"}}'" failed.

Exit Code: 1(General error)
Run Code Online (Sandbox Code Playgroud)

我已按照自述文件中的说明安装最新版本的稳定 Chrome:

curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash -
sudo apt-get install -y nodejs gconf-service libasound2 libatk1.0-0 libc6 libcairo2 libcups2 libdbus-1-3 libexpat1 libfontconfig1 libgcc1 libgconf-2-4 libgdk-pixbuf2.0-0 libglib2.0-0 libgtk-3-0 libnspr4 libpango-1.0-0 libpangocairo-1.0-0 libstdc++6 libx11-6 libx11-xcb1 libxcb1 libxcomposite1 libxcursor1 libxdamage1 libxext6 libxfixes3 libxi6 libxrandr2 libxrender1 libxss1 libxtst6 ca-certificates fonts-liberation libappindicator1 libnss3 lsb-release xdg-utils wget …
Run Code Online (Sandbox Code Playgroud)

node.js laravel laravel-forge puppeteer

5
推荐指数
0
解决办法
1271
查看次数