Questions tagged «php-fpm»

PHP-FPM(FastCGI流程管理器)是另一种PHP FastCGI实现,具有一些其他功能,可用于各种规模的站点,尤其是繁忙的站点。

3
在Docker容器中运行时,如何获取php-fpm登录到stdout / stderr
我在docker容器中安装了php-fpm,并在其中Dockerfile编辑fpm config文件(/etc/php5/fpm/pool.d/www.conf)来设置访问日志/var/log/fpm-access.log和错误日志/var/log/fpm-php.www.log: # Do some php-fpm config # Redirect worker stdout and stderr into main error log # Activate the fpm access log # Enable display errors # Enable the error log RUN sed -i '/^;catch_workers_output/ccatch_workers_output = yes' /etc/php5/fpm/pool.d/www.conf && \ sed -i '/^;access.log/caccess.log = /var/log/fpm-access.log' /etc/php5/fpm/pool.d/www.conf && \ sed …

2
空白页:nginx + php-fpm上的wordpress
美好的一天。 虽然这篇文章讨论了类似的设置,以使我在成功安装后偶尔提供空白页,但是我只能提供空白页。有没有存在的错误/var/log/nginx/error.log,/var/log/php-fpm.log或/var/log/nginx/us/sharonrhodes/blog/error.log。 我的设置: WordPress的3.0.4 nginx 0.8.54 php-fpm 5.3.5(fpm-fcgi) Arch Linux 配置文件 php-fpm.conf: [全球] pid =运行/ php-fpm / php-fpm.pid error_log =日志/php-fpm.log log_level =通知 [万维网] 听= 127.0.0.1:9000 listen.owner = www listen.group = www listen.mode = 0660 用户= www 组= www pm =动态 pm.max_children = 50 pm.start_servers = 20 pm.min_spare_servers = 5 pm.max_spare_servers …

3
nginx / php-fpm错误记录
我试图找出我的安装程序中的PHP错误所在。我将nginx作为PHP-FPM的反向代理运行,但没有看到我的应用程序正在生成的各种E_NOTICE或E_WARNING消息。我知道它们正在发生的唯一原因是响应失败和NewRelic捕获堆栈跟踪。 这是日志记录配置: nginx.conf proxy_intercept_errors on; fastcgi_intercept_errors on; php.ini error_reporting = E_ALL display_errors = Off display_startup_errors = Off log_errors = On log_errors_max_len = 1024 ignore_repeated_errors = Off ignore_repeated_source = Off report_memleaks = On track_errors = On error_log = syslog php-fpm.conf [global] error_log = /var/log/php-fpm/fpm-error.log [www] access.log = /var/log/php-fpm/access.log access.format = "%t …
16 php  php-fpm  php5  logging 

2
重新启动后,PHP-FPM无法自动启动
我正在运行PHP-FPM和Nginx,出于某种原因,有时我必须重新启动服务器。服务器再次运行后,nginx服务将自动启动,但是PHP-FPM不会启动。sudo /etc/init.d/php-fpm restart重新启动后立即运行命令并获得结果,可以看到此信息: $ sudo /etc/init.d/php-fpm restart Stopping php-fpm: [FAILED] Starting php-fpm: [ OK ] 这是预期的行为吗?使PHP-FPM自动启动的最佳方法是什么?哪里有配置选项,还是必须将命令添加到Linux启动脚本之一? 谢谢。

7
Nginx + php5-fpm =“找不到文件”
在使用nginx / fpm设置站点时,我碰壁了。该页面显示“找不到文件”,这出现在nginx error.log中: FastCGI sent in stderr: "Primary script unknown" while reading response header from upstream 我是nginx和fpm的新手,并且该错误消息对我而言毫无意义(即使Google机器也无济于事!)。任何人都可以阐明可能发生的事情吗?
14 nginx  php-fpm  socket 

1
时间到第一个字节先生的奇怪情况
我有一个基于Linode 1024 VPS的Web服务器,基于 Ubuntu 11.10 Nginx 1.0.5 PHP 5.3.6(带有PHP-FPM,APC) 清漆3.0.2 还有一些基于WordPress 3.3.1的博客。其中之一是纯博客,具有默认配置,主题和仅“ Hello World”帖子,用于测试服务器。另一个是从其他服务器克隆的博客,其中包含近1万个帖子和超过1万条评论。该博客每天有5k唯一身份。 服务器在测试博客的ab测试中给出了很好的数字,但是对克隆的博客进行相同的测试是不可能的:ab测试会使服务器负载过多,并且我必须停止该过程,无论如何这会使ab显示出来这个结果真差。 在正常操作时,仪表板还显示“正常”负载,但是在ab测试期间,正常显示较大负载。 还有另外一件奇怪的事情发生(对我来说最重要):到第一个字节的时间非常长,但是之后等待该站点的速度非常快。可以使用tools.pingdom.com之类的服务轻松对其进行测试,从而得出此结果。请注意表示“等待时间”的黄色区域。 为什么会这样呢?可能的想法: 错误的PHP-FPM配置 Linode DNS响应时间太长了。废话-测试博客解决DNS问题,TTFB很棒 错误的Nginx配置 如果有人需要更多信息, 在这里,您具有当前克隆的博客nginx配置文件 (/etc/nginx/sites-available/muycomputerpro.com) 在这里,你已经得到了当前的my.cnf配置(/etc/mysql/my.cnf)(我知道,暂时不缓存,这不会对过去的TTFB差异) 在这里,您具有当前的PHP-FPM配置(/etc/php5/fpm/pool.d/www.conf)

1
Apache MPM-Worker与Prefork
我正在尝试找出可以在VPS上安装的最佳Apache MPM。我看到了一些基准测试,MPM Worker似乎比Prefork性能更好,但是由于某些原因,每个人似乎都建议在PHP设置中使用Prefork over Worker。 这仅仅是因为某些PHP函数不是线程安全的吗?只setlocale()想到了,但是我将在每个实例上使用相同的语言环境,因此我认为这不会成为问题。我的VPS内存不足,我觉得工作者MPM可以更好地满足我的需求,但是我不确定。 有人可以帮我下定决心吗?谢谢! PS:我也研究了nginx和lighttpd。nginx看起来很棒,但我试图避免从源代码进行编译,但我仍然不太了解php-fpm的用途。关于lighttpd-使用它设置PHP / FCGI非常容易,但是我听说它存在内存泄漏。这仍然是真的吗?

2
php-fpm:数百秒的记录
我有Nginx + php-fpm网络服务器 因此,我在php5-fpm.log中注意到了许多奇怪的行: [03-Sep-2013 09:25:23] NOTICE: [pool www] child 23999 exited with code 0 after 321.832329 seconds from start [03-Sep-2013 09:25:23] NOTICE: [pool www] child 24082 started [03-Sep-2013 09:25:41] NOTICE: [pool www] child 24032 exited with code 0 after 259.247887 seconds from start [03-Sep-2013 09:25:41] NOTICE: [pool www] child …
12 php-fpm 

6
为什么下载PHP文件而不是由Nginx处理?
我已经看到了相同的问题,并且针对它的许多解决方案都指向添加类型处理程序,但这是针对Apache的。 我正在使用Arch Linux,Nginx,PHP和PHP-FMP,但我不知道为什么要下载php文件而不是运行它。 这是我的nginx.conf: #user http; worker_processes 1; #error_log logs/error.log; #error_log logs/error.log notice; #error_log logs/error.log info; #pid logs/nginx.pid; events { worker_connections 1024; } http { include mime.types; default_type application/octet-stream; #log_format main '$remote_addr - $remote_user [$time_local] "$request" ' # '$status $body_bytes_sent "$http_referer" ' # '"$http_user_agent" "$http_x_forwarded_for"'; #access_log logs/access.log main; sendfile on; …
12 php  nginx  php-fpm 

2
Nginx缓存符号链接
我的Web服务器上有一个部署系统,每次部署应用程序时,它都会创建一个带时间戳的新目录,并将符号“当前”链接到该新目录。这一切在apache上都很好,但是在我设置的新的nginx服务器上,看起来好像正在运行“旧”部署中的脚本,而不是新的符号链接的脚本。 我已经阅读了一些有关如何解决此问题的教程和帖子,但没有太多信息,而且似乎也无济于事。这是我的虚拟主机文件: server { listen 80; server_name ~^(www\.)?(?<sname>.+?).testing.domain.com$; root /var/www/$sname/current/public; index index.html index.htm index.php; location / { try_files $uri $uri/ /index.php$is_args$args; } location ~* \.(jpg|jpeg|gif|png|bmp|ico|pdf|flv|swf|exe|html|htm|txt|css|js) { add_header Cache-Control public; add_header Cache-Control must-revalidate; expires 7d; } location ~ \.php$ { #fastcgi_split_path_info ^(.+\.php)(/.+)$; fastcgi_pass unix:/var/run/php/php7.1-fpm.sock; include fastcgi_params; fastcgi_param DOCUMENT_ROOT $realpath_root; fastcgi_param SCRIPT_FILENAME …
12 nginx  php-fpm  cache  php7 

2
用另一个文件覆盖php-fpm池配置值
必须自定义新服务器的php-fpm池配置,我想知道是否有可能/允许/建议使用一个新的池文件,该文件名按字母顺序排列在原始文件之后,该文件仅具有覆盖初始配置的值。 原始配置以/etc/php/7.0/fpm/pool.d命名www.conf。 根据与安装相关的页面,工程师似乎可以直接修改原始文件(保存初始值的副本)。例如 [www] ... user www-data group www-data pm.max_children 2 修改后给出 [www] ... user myapp ; was www-data group myapp ; was www-data pm.max_children 8 ; was 2 但是,在下一次升级php-fpm之后,似乎有可能要重复执行此任务(此外,配置已步入7.0正轨,这令人担忧)。 我不想修改原始文件,而是要保持不变,然后添加另一个文件,说wwwmyapp.conf它将声明相同的池,并且仅保留已更改的值 在 wwwmyapp.conf [www] ; same pool! user myapp group myapp pm.max_children 8 在pool.d中,文件列表 www.conf wwwmyapp.conf 因为在php-fpm.conf所有池conf文件中都已加载,所以的值wwwmyapp将在www(在同一www池中)的值之后读取,并且应覆盖第一个值。 它似乎可以在一些测试中工作,并且没有错误报告,但是它会一直在所有值中工作吗? 我们应该直接覆盖配置文件吗? 在任何文档中都找不到答案,即使在php.net上也是如此。

1
空白页example.com/phpmyadmin,浏览器控制台中出现错误
我已经安装了phpmyadmin并将其符号链接到我的LEMP服务器上(php 7)。但是当我转到主机名/ phpmyadmin时,它将返回一个空白页面,在标题栏上带有phpmyadmin图标。 浏览器控制台中的3个错误: 无法加载资源:net :: ERR_INCOMPLETE_CHUNKED_ENCODING 未捕获的ReferenceError:未定义$ 未捕获的ReferenceError:未定义PMA_commonParams 我尝试了许多解决方案,但无法找到问题所在:( 服务器配置: server { # listen 80 ; # listen [::]:80 default_server; # SSL configuration # listen 443 ssl default_server; listen [::]:443 ssl default_server; # # Note: You should disable gzip for SSL traffic. # See: https://bugs.debian.org/773332 # # Read up …

5
Docker-分别缩放Nginx和php-fpm
我一直在玩docker和docker-compose,有一个问题。 目前我的docker-compose.yml看起来像这样: app: image: myname/php-app volumes: - /var/www environment: <SYMFONY_ENVIRONMENT>: dev web: image: myname/nginx ports: - 80 links: - app volumes_from: - app 应用程序包含端口9000上的php-fpm和我的应用程序代码。Web是nginx,具有一些配置。 这可以实现我期望的功能,但是为了将nginx连接到php-fpm,我有这条线: fastcgi_pass app:9000; 我如何有效地扩展呢?例如,如果我想运行一个nginx容器,但运行三个app容器,那么我肯定要有三个php-fpm实例,所有实例都试图在端口9000上侦听。 如何在每个给定时间将每个php-fpm实例放在不同的端口上,但仍然知道它们在我的nginx配置中的位置? 我采用错误的方法吗? 谢谢!
11 nginx  php  php-fpm  docker 

2
Nginx仅使用php-fpm在php脚本上抛出404
我已经使用nginx+ 安装了测试服务器php-fpm。我已经尝试了以下所有方法: Nginx + Php5-fpm无法呈现php文件 nginx + php fpm-> 404 php页面-找不到文件 访问PHP文件时,nginx抛出404错误 总结一下我尝试过的: 重新安装。 更改脚本特权(将其更改为0777)。 fastcgi_intercept_errors on。 检查root指令的层次:server,location和location ~ \.php。 检查fastcgi_param SCRIPT_FILENAME指令。 服务器在(且仅在).php脚本上返回404 。我可以将它们重命名为.html,就可以了。我该怎么办? 这是我的nginx.conf: user nginx; worker_processes 1; error_log /var/log/nginx/error.log; pid /run/nginx.pid; events { worker_connections 1024; } http { include /etc/nginx/mime.types; default_type application/octet-stream; log_format main '$remote_addr - $remote_user [$time_local] …
11 nginx  php-fpm 

4
各种virtualhost(php-fpm)的不同php.ini设置
我在serverFault上搜索分配,并找到了此解决方案... 将其包含在虚拟主机中应该可以: php_admin_flag register_argc_argv = On php_value max_execution_time = 1000 php_value session.gc_maxlifetime = 15000 php_admin_flag magic_quotes_gpc = on 但是,比它让我惊叹的是,我根本没有使用mod_php。我已经安装了php-fpm。我真的找不到任何信息,如果我的方法可行,或者是否有其他方法... 因此,如果我拥有php-fpm并想为virtualhost设置不同的设置,该怎么办? S.

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.