问题标签 [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 回答
45 浏览

php - Laravel5 部署在 CLI 和 Web 服务器之间共享环境变量

我正在部署一个 Laravel 应用程序,我的构建脚本的一部分是运行 ./artisan migrate。虽然我可以通过将环境变量添加到站点可用的 nginx 站点配置中来将环境变量传递给 Web 服务器,但由于显而易见的原因,它们不会与 CLI 共享。

有没有办法在 Web 服务器和 CLI 中包含相同的环境变量以使用?我尝试添加一个带有值的配置文件,/etc/php/7.0/fpm/pool.d/但它不起作用。

我的/etc/php/7.0/fpm/pool.d/env.conf

0 投票
1 回答
248 浏览

php - 如何配置 NGINX + PHP5-FPM 为特定 IP 范围保留连接槽?

在一些罕见的高峰使用期间,我的服务器用完了可用的 PHP5 FPM 可用子级(我不能进一步增加这个数字,而不会冒着内存不足的风险)。如果最终用户在极少数情况下收到 503 或 504 消息,我在某种程度上可以接受,但我想确保某些 IP 地址范围始终可以访问我的服务器的特定客户端 API 请求。

我有什么办法可以指定 fastcgi 通过来自某些 IP 范围的请求的限制,然后为来自另一个 IP 范围的请求允许额外的 5-10 个“保留连接插槽”?这就是我的想法:

基本上为某些客户端保留最后 10 个子进程。

我正在考虑尝试使用worker_connections/worker_processes来实现这些限制,但是由于它们contextevents存在,没有办法让它们因请求 IP 而异吗?

0 投票
1 回答
3810 浏览

docker - 如何在 Dockerfile 中启动 PHP7.0-FPM?

通过查看我能找到的所有答案,我似乎无法启动 fpm 7。如果我进入容器并手动运行:service php7.0-fpm start一切正常。

我试过的我:
CMD ["nginx", "-g", "daemon off;", "php7.0-fpm"]

我尝试过的II:
CMD ["php7.0-fpm", "nginx", "-g", "daemon off;"]

我尝试过的三:
CMD ["php-fpm7.0", "nginx", "-g", "daemon off;"]

我尝试过的四:
RUN service php7.0-fpm start
CMD ["php-fpm7.0", "nginx", "-g", "daemon off;"]

PS:
Nginx 工作正常。

PPS:
如果可能的话,我想避免使用主管。

0 投票
1 回答
4254 浏览

php - php-fpm 连接被对等方重置

我正在尝试在 Docker 映像上设置 php-fpm。

这是我的 docker-compose.yml 中的服务:

Docker 镜像使用这个命令:

这是我的 php-fpm 配置文件:

我设置listen.allowed_clients = 127.0.0.1是因为否则我会收到拒绝连接的消息;最终我需要 php-fpm 来接受来自任何 IP 的连接,因为我不知道我的 Nginx 映像将拥有什么 IP,而且这并不重要,因为我的 php-fpm 映像不会公开连接到互联网.

我跑去docker exec登录正在运行的镜像并跑去wget测试服务器:

控制台不显示任何输出,除了:

0 投票
1 回答
3472 浏览

php - nginx + PHP-FPM:取消 fastcgi 参数

我正在做一个小实验,如果你愿意的话,一个假设。主要思想很简单:三个 Docker 容器,一个只是一个简单的数据容器,其中包含一个 index.php,它/app/web/只是输出phpinfo();这很好用。

我有一个运行良好的 nginx 容器和一个单独的 PHP-FPM 容器。两者都是来自官方图像。

我在标准设置下一切正常,甚至作为一项安全措施,将数据容器仅绑定到 php-fpm,因此 nginx 甚至无法访问文件本身。所以数据容器安装在 php-fpm 容器上/app,一切顺利。

这一切都很好。然后我开始玩一些变量。

我突然想到,实际上,如果 nginx 只是将变量传递给 php-fpm,那么我可能会删除 nginx fastcgi 设置中的一些参数,因为如果它甚至不知道发生了什么,它为什么需要它们? ?

chrootset to一切顺利/app,我添加了chdirto /web,但是一旦我PATH_TRANSLATED从 nginx 中删除,它就无法工作。我要么得到File not found.要么No input file specified.

这里是 nginx 容器的 nginx.conf 的相关部分,在 nginx.conf 中没有root指定:

www.conf和池的相关部分:

有任何想法吗?

0 投票
0 回答
917 浏览

php - Apache2 PHP-FPM 配置池

我正在尝试设置池以便以不同的用户身份运行 PHP 脚本,但它不起作用。这是我所做的一步一步(在 Ubuntu 16.04 上):

然后我创建了一个名为“web”的用户

并在 /var/www/web 中设置他的主目录

为新用户创建和配置池文件:

现在为了确保 php 脚本以正确的用户身份运行,我将以下脚本放在 /var/www 和 var/www/web

当我运行 /var/www/user.php 时,它显示正确的“www-data”。但是当我运行 /var/www/web/user.php 它仍然显示“www-data”而它应该显示“web”

那么我的 Apache 配置有什么问题?

0 投票
1 回答
1974 浏览

php - apache+php-fpm 出现随机 403 错误

在我的服务器上,使用 Apache 2.4.23 和 php-fpm 7.0.11 运行 Ubuntu 14.04.5,我收到随机 403 错误。

我说“随机”是因为我在日志中看到的带有 403 的页面在我尝试时运行良好。另外,我直接体验到(我的意思是用我的浏览器访问服务器上的一个站点)我收到了 403 错误,然后重试(只是刷新)我得到了 200。

服务器正在运行一些网站(大约十几个),有各种解决方案(几个 Wordpress,一些旧的意大利面条 php 应用程序,主要是基于 Symfony 框架的现代应用程序)。

如果有人能指出一些增加某些日志的详细程度的方法,我也会很高兴,尝试自己解决这个问题。目前我在虚拟主机的 apache 日志中看到 403 错误。

0 投票
0 回答
68 浏览

php - 创建更多的兔子消费者会增加延迟

我有一个运行 symfony 应用程序的服务器作为兔子消费者(准确地说是 rpc)。如果我启动一个 php-consumer,延迟大约是 300-500ms。如果我启动 2 个或更多消费者,当我添加另一个消费者时,延迟会翻倍至 600-1000 毫秒,并且当我添加更多消费者时,延迟会持续上升。随着消费者的增加,整体吞吐量略有提高,但为什么延迟会变得如此疯狂?超过 500 毫秒的延迟并不酷..

孤独的应用程序甚至没有使用服务器容量的百分比,我想通过启动大量的兔子消费者来更好地利用它,但是延迟......

我在跑:

  • Ubuntu 14.04.4 LTS 值得信赖
  • PHP7.1-fpm
  • Nginx 1.4.6

我已经阅读了整个互联网,尝试了不同的配置(很多不同的配置),并从中调试了 sht,但我就是不知道它为什么这样做。

我什至不确定这里提供什么配置,所以请根据需要询问他们。

0 投票
1 回答
43 浏览

php - 关闭 FPM 日志中的换行

有没有办法在 php-fpm 日志中关闭断线?在没有换行符的情况下记录数据会更舒服,因为当您从日志中 grep 某些内容时,它只输出日志条目的第一行,而如果有行,可能会有一些额外的信息,如 var dump 或堆栈跟踪被切断休息。它在 apache 中很好,因为它可以逃脱它们,并且在必要时最好使用 sed,但现在有点痛苦(

0 投票
0 回答
2064 浏览

php - proxy_read_timeout 和 fastcgi_read_timeout 有什么区别?

... 当 Nginx 充当 PHP-FPM 的前端时?

Nginx 是一个代理,PHP 是通过 fastcgi 提供的……那么,两者都适用吗?

背景:Nginx 报告了很多超时,因为 PHP-FPM 的响应时间太长了,所以我必须弄清楚我必须增加哪个值。