问题标签 [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 投票
3 回答
1786 浏览

php - 在项目目录中保存 php 会话时出错

在我的项目的配置文件中,我有:

"%kernel.root_dir%/../var/sessions属于wwww-data(是的,php-fpm 运行为www-data)。

当项目运行时,会在该目录中创建一个(的)会话文件,但显然 php/symfony 在实际读取/写入它时遇到了麻烦,尽管能够正确创建它。这是刚刚创建的空会话文件(在此请求之后没有运行其他进程):

会话文件,已创建

请求终止,引发异常:

会话数据文件不是由您的 uid 创建的。

我找到了这个答案(和这个答案),并通过这样做(将我的会话设置save_path"/var/lib/php/sessions"我能够继续(我可以看到我的会话文件不仅被创建,而且它的内容实际上已经到位),但是我试图了解为什么无法将会话文件保存在自定义位置。

在我的 PHP 配置中,我看到我已session.save_path设置为/var/lib/php/session,但我希望我能够在执行时覆盖它。

真正让我生气的是会话文件被创建(所以文件权限应该没问题),但没有写入。

我在 nginx + php-fpm (7.0) 之上运行 Symfony 3.2.2。

为什么会这样?我应该使用任何其他设置,以便 php 能够覆盖此配置并将其会话文件写入其他地方吗?

从跟踪中我看到:

  • NativeSessionStorage ->start()被调用并执行session_start(返回true
  • 然后SessionHandlerProxy ->read($sessionId)调用,调用时抛出异常$this->handler->read($sessionId);
0 投票
3 回答
1065 浏览

php - PHP FPM Nginx 无法上传超过 2 GB 的文件

我正在使用带有 php 5.6 和 nginx/php fpm 的 64 位 CENT 操作系统。

我在 VPS 中运行 owncloud 实例,一切运行顺利,除了大小超过 2 GB 的任何文件都没有上传并出现网关错误,我调整了所有设置,如

https://github.com/owncloud/documentation/wiki/Uploading-files-up-to-16GB

所有的值都设置好了,仍然每当 php-fpm 将文件写入临时目录时,它恰好停在 2 GB,有时是 2.1 或 2.2 但不是在那之后,它不是超时问题,有时如果我上传 7 GB 的文件,它上传了几个小时,进度条没有任何问题,直到 100% 然后停止,检查我可以看到的 tmp 文件夹,

cd /var/www/owncloud/temp/

[root@files temp]# ll -ah

-rw------- 1 nginx nginx 2.2G 2 月 9 日 17:46 phpyHKRQD

我在这里超级困惑,为什么 php 在 64 位环境中会停止在 2 GB。

0 投票
1 回答
419 浏览

php - MongoDB PHP 驱动程序未在 fpm 中加载 - 但在 cli 中加载

安装的系统和工具如下:

  • Linux 服务器Ubuntu 16.04.1 LTS
  • php7.0
  • mongoDB version v3.2.12
  • mongoDB php driver 1.2.5.

我已经小心地添加extension=mongodb.so/etc/php/7.0/fpm/php.ini/etc/php/7.0/cli/php.ini

然后我有一个文件info.php,其中包含<?php phpinfo(); ?>

所以php -f info.php返回 mongoDB 已正确加载,我可以实例化各种类并使用它们。

但是如果将文件加载到网络浏览器www.myserver.com/info.php中,我找不到 mongoDB 部分。事实上,所有 mongoDB-PHP-driver 代码都失败了。

是因为没有为 php/fpm 正确安装 MongoDB-php-driver 吗?还是因为MongoDB 本身没有正确安装?

非常感谢

0 投票
1 回答
589 浏览

php - 尽管有 php.ini 设置,PHP 没有记录脚本错误

我将 PHP-FPM 与 NGINX 一起使用,但我无法让错误日志与 PHP-FPM 一起正常工作。

这是我php.ini的,相关部分:

(PHP-FPM主进程加载的配置)的相关片段www-pool.comf

/var/www/logs/可写www-data- 用户 PHP-FPM 和 web 服务器正在运行。

现在,如果我这样做index.php

error_log('Some error');

错误消息可以/var/www/logs/php-scripts.error.log毫无问题地找到。但是,当我尝试像这样触发错误时:

trigger_error('Some error', E_USER_WARNING);

该错误未记录在日志文件中。此外,当我启动故意破坏的 PHP 脚本时,我在屏幕上收到 500 Internal Server Error,但 PHP 错误日志中没有记录任何内容,例如:

请注意上面的缺失;-应该在错误日志中报告错误,我只收到 500 Internal Server Error 并且日志中没有输出。

你能帮忙吗?谢谢。

0 投票
0 回答
57 浏览

nginx - Symfony3 数据库调用需要很长时间,它使整个站点停止工作。如何在一定时间后关闭连接?

我的服务器设置是 php7.0-fpm 和 nginx,上面运行着 symfony。

我只是使用原始 pdo 连接

我的一个 SQL 查询需要很长时间,同时在此期间还关闭了站点。

我想我需要更改一些配置,但我有点 sys-admin/ops 初学者。

我尝试添加到我的 php.ini

我尝试添加=>

在我的 symfony config.yml 中。

都没有用!

还有另一种设置超时的方法吗?还是有其他事情出错了?

0 投票
2 回答
2041 浏览

php - 无法在 ubuntu 16.04 数字海洋水滴上安装 php5-fpm

我正在尝试设置 phppgadmin 并且它需要 php5-fpm 但因为我有 ubuntu 16.04 并且它带有 php 7。所以当我尝试运行 install php5-fpm 它给我以下错误:

我不能使用 php7-fpm,因为 phppgadmin 只需要 php5-fpm。当我运行 sudo apt-get install php-fpm 它安装 php7-fpm 。我正在使用 nginx 作为网络服务器。我尝试了很多 ppa,但没有一个对我有用。

0 投票
0 回答
139 浏览

php - 部署/更改 php 文件后 php5-fpm 性能低

我们正在运行 nginx + php5-fpm,作为部署过程的一部分,我们使用符号链接指向最新版本的 PHP 代码。为了避免在部署新版本时更改文件出现问题,我们使用如下的 nginx-config,其中使用 $realpath_root 将真实文件路径发送给 php-fpm:

当我们使用 AWS 实例时,这种设置在去年运行良好。现在我们切换到 Google Cloud,每次部署新版本时,我们的服务器响应时间都会增加 2-3 倍。使用(其中 17 是主进程的进程 ID)重新加载 PHP-fpm 后kill -USR2 17,响应时间恢复到正常值。

部署后响应时间增加

任何建议如何在每次发布后不重新启动 php-fpm 工作进程的情况下解决这个问题?

最好的,托拜厄斯

0 投票
0 回答
128 浏览

php - Laravel 5.2 + Nginx + PHP7 + PHP7.0-FPM - 执行的代码不同于硬盘

我有一个意外的行为,Laravel执行的代码与更新的代码不同。似乎 PHP7.0-FPM 或其他组件将其保存在内存中,只有硬重启机器才会刷新代码。

即我有一个文件“SomeController.php”

执行 git pull 后,新文件现在是:

但是在运行代码输出时仍然显示version1

我试过了:

sudo service php7.0-fpm reload //no success

sudo service php7.0-fpm restart //no success

sudo service nginx restart //no success

sudo reboot //the only thing that works

这绝对是某种代码缓存问题,因为每次硬重启都能解决这个问题。

据我了解sudo service php7.0-fpm reload应该做的工作。

任何建议将不胜感激。

更新 - 每个评论的 nginx 配置

nginx.conf 内容

//在站点可用/启用下 - 设置是

0 投票
2 回答
629 浏览

php - php 7.0 fpm 用于池不工作的单独错误日志

我在 Sentrifugo 的一些 php 页面上获得了 500 状态,为了找出问题所在,我尝试设置错误日志记录

可以在这个 gist中找到配置

但是,在我得到 500 的页面上,我在这些文件中都看不到任何日志条目

工作池日志目录为空

我所看到的只是 access.log 中记录的 500 状态,根本没有任何信息可以帮助我进行故障排除

/var/log/nginx/foo/error.log 中也没有条目

更新

所有日志目录都可以由各自的所有者写入

是否display_errors按照答案之一中的说明对设置进行了更改,但这仍然没有为故障排除提供任何有用的日志输出。

这是摘录var/log/php-fpm/www.acccess.log

0 投票
0 回答
69 浏览

php - Cent OS 7.3 无法创建 php-fpm.sock

我正在尝试在我关注的 centOS 7.3 服务器中安装 mysql+ nginx +php+php-fpm

https://sg.godaddy.com/help/build-a-lemp-stack-linux-nginx-mysql-php-centos-7-17349

它未能创建 /run/php-fpm/php-fpm.sock

你能帮我修一下吗?