问题标签 [fpm]

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 回答
62 浏览

php - PHP重启后Yii2 Facebook auth成功一次,之后失败

我按照本教程在我的 Yii2 应用程序上使用 facebook 登录:https ://mushtaqtahir.com/blog/2/facebook-authentication-using-yii2-authclient

它工作了几个月没有问题,但突然出现了问题。当我尝试登录时,在成功登录 Facebook 后返回错误 502 并返回应用程序。我尝试在服务器上重新启动 PHP FPM。PHP重新启动后它只工作一次,但之后继续失败。

我检查了 nginx 错误日志,发现了这个:

可能是什么问题?

0 投票
1 回答
1742 浏览

php - 仅记录来自 Docker 容器中 PHP-FPM 的真正致命错误

我在单独的 Docker 容器中使用 NGINX 和 PHP-FPM。我只想将错误发送到 stderr,以便我可以在集中式日志服务器上收集它们。问题是:我正在使用 WP,并且似乎有一些写得不好的插件。它们可以工作,但会引起如下警告:

2017/06/17 01:16:08 [错误] 7#7: *1 FastCGI 在标准错误中发送:“PHP 消息:PHP 警告:wp_default_scripts() 的参数 1 应为参考,在 /www/wp 中给出值-includes/plugin.php 在第 601 行

用于测试的示例脚本,它应该在标准错误中给我一个致命错误:

PHP-FPM 被配置为将错误记录到 stderr,如下所示:

我想知道这在上面的脚本中没有给我任何东西。就在我切换log_level到 at least之后notice,我在 docker 容器的控制台上得到了异常:

[17-Jun-2017 01:45:35] 警告:[pool www] child 8 对 stderr 说:“注意:PHP 消息:PHP 致命错误:未捕获的错误:调用 /www/x 中未定义的函数 not_existing_func()。 php:2"

这他妈怎么是通知?对我来说,我们在这里显然有一个致命错误,如消息所示,导致脚本无法继续(当然,我们在浏览器中收到 500 错误)。我必须设置log_levelnotice这样是不可能的,这样我就不会错过作为警告的致命错误。同时,我的日志中充满了来自 wordpress 主题、插件等的垃圾警告,这些都是我尚未开发且出于更新原因不想修复的...

我尝试了一下,发现log_errorsinphp.ini对于 PHP-FPM 获取任何信息是必不可少的。但是来自的日志级别error_reporting似乎也是有线的。出于测试目的,我使用了以下配置:

结果:我收到了通知,但没有关于我的致命错误的信息...

0 投票
2 回答
1655 浏览

php - Apache 2.4.26 中的 SCRIPT_FILENAME 和 PHP_SELF 错误

对于使用 php-fpm 7.1.6 的 Apache 2.4.26,$_SERVER['SCRIPT_FILENAME'](和$_SERVER['PHP_SELF'])在文件夹上不正确:

阿帕奇 2.4.26:

阿帕奇 2.4.25:

怎么了?

0 投票
0 回答
975 浏览

php - 将 .htaccess 与 apache + php-fpm + event mpm 一起使用

Apache 官方文档对此含糊其

警告:当您将请求 ProxyPass 到另一台服务器(在本例中为 php-fpm 守护程序)时,可能会绕过身份验证限制以及放置在 Directory 块或 .htaccess 文件中的其他配置。

那么,我还能以某种方式在此设置中使用 .htaccess 吗?

0 投票
0 回答
600 浏览

php - nginx + php-fpm chdir 不工作

我在让我的 nginx 和 php-fpm 工作时遇到问题。

当我尝试访问我的应用程序时收到错误 504。

我有这样的结构;

在我的 fpm 池中,我有以下内容:

在我的 nginx 中:

所以我想要的是 chrootdata/mybesite/和位于的应用程序data/mywebsite/released/web/以访问共享文件夹中的文件。

注意:我不知道是否值得一提,但我有一个这样的软链接released -> /data/mywebsite/revisions/...

0 投票
0 回答
289 浏览

php - Php-fpm 响应的 Nginx 超时

我正在运行 Nginx + Php-fpm。PHP 的 max_childs = 20 的限制。因此,它一次只能接受 20 个连接。所以,有2个问题:

  1. 如何区分等待“免费”php子的Nginx超时与等待php子实际“工作”时间的时间?

  2. 或者如何使 Php 不对不符合 max_children 限制的请求进行排队?如果没有“免费”孩子,就迅速拒绝连接?

因为它会导致一些问题。如果 Nginx 有 fastcgi 读取超时,例如 60s,php 脚本执行 20s。

因此,如果 Nginx 等待“免费” php child 超过 40 秒,那么开始执行 php 根本没有任何意义,因为 Nginx 由于超时仍然无法等待它的回答。

0 投票
0 回答
100 浏览

php - 如何最好地对具有“正在处理”状态的大量请求的 apache 网络服务器进行故障排除

我正在运行具有中/高流量 Prestahop 电子商务网站的 Linux Centos/Plesk 机器。

我使用由 Apache / Nginx 提供的带有 PHP 7.0 FPM 的 stock-Plesk 配置作为反向代理。我只是根据服务器功率对 FPM 池设置进行了一些调整,基本上是为了增加 MaxChildren 值以服务更多请求。

从某些日子开始,我偶尔会遇到我正在尝试解决的网站速度变慢(网站上次没有任何特定的访问量增加)。

我已经对以下内容进行了一些检查: - 服务器日志,看不到特定的 error_logs - 服务器平均负载(没问题) - I/O“wa”值正常 - MySQL 服务器在减速期间查询没有变慢(显示完整的进程列表永远不会返回长执行时间的查询)-net stat(没有 DDOS / 奇怪的连接)

我从 Apache 安装了 mod_status 并从服务器状态页面注意到,在减速期间,我有大量处于“W”状态的“当前正在处理的请求”[发送回复](在减速期间,我最多可以有 70/80请求几秒钟),因此我可以将减速与 Apache 忙于交付请求相关联,但我无法弄清楚问题的原因以及应用程序/网页组件是什么以及问题的根源。

我的问题是关于如何理解减速的罪魁祸首的一些建议(PHP 脚本?Apache 请求期间卡住的外部服务?)

谢谢你。

0 投票
1 回答
38 浏览

php - PHP fpm 安装如何用 apache 配置它?

PHP fpm 是新安装的,如何使用 apache 配置它?

netstat -an | grep :9000我已经尝试过这个命令,但它什么也没返回我认为我需要先用 apache 配置它

0 投票
1 回答
4155 浏览

php - 如何计算 php-fpm 的已用内存?

假设我有一个使用 php-fpm 运行的 php 应用程序。以下是 php/php-fpm 和 opcache 的选项。如何计算所有组件使用了多少内存?

这是我的想法。php-fpm 正在启动 1 个 128 MB 和 opcache 128MB = 256 MB 的进程。如果 php-fpm 创建一个新的服务器/进程,我们将有 2 个 256 MB 的进程和 opcache 128 MB = 384 MB。那是对的吗?

背景是计算 Kubernetes 部署的正确内存限制。

0 投票
1 回答
1354 浏览

php - Apache + php 7 + FPM = 系统突然中断

我有一个运行简单 wordpress 博客的 apache2 + php7 服务器。

该博客一直使用 apache + mod_php + php7 运行,但最近在某些访问高峰期间,系统崩溃了,变得缓慢甚至崩溃。

所以我用谷歌搜索了如何优化配置,许多教程说 mod_php 很慢,我应该用 php-fpm 替换它。

我做到了,更改后网站明显更快,但现在它随机崩溃并开始出现 http 500 错误......

新的崩溃没有明显的原因,没有用户高峰或我能注意到的任何其他情况。

apache错误日志有很多:

真的有成千上万这样的错误,每两秒一个错误,我不明白。

首先,为什么 apache 向 fpm 询问 css?

其次“/usr/lib/cgi-bin/php-fcgi”应该是什么?这个文件夹里没有文件!!应该有什么?

php-fpm 的日志完全没用,我启用了 loggind 的 DEBUG 级别,我得到的只是:

每隔一秒就有一个这样的状态消息,并且随机间隔一些:

但没有堆栈跟踪或详细的错误消息来帮助我理解。我真的很喜欢 apache + fpm 的性能,不想回滚到 mod_php,但是在当前配置下不可能运行 12h 而不崩溃。

下面的链接显示了服务器 https://jpst.it/11FIP的 php_info 页面

有人有想法吗?