我的系统上运行着 nginx,并且安装了 php8.1。但我遇到了 Bad Gateway 问题。我发现我的系统上没有安装 php8.1-fpm.sock:
$ php -ver
PHP 8.1.7 (cli) (built: Jun 10 2022 12:22:31) (NTS)
Copyright (c) The PHP Group
Zend Engine v4.1.7, Copyright (c) Zend Technologies
with Zend OPcache v8.1.7, Copyright (c), by Zend Technologies
@lc2530hz:/usr/bin$
我的文件:/etc/nginx/sites-available/default
包含有关 php8.1-fpm.sock 的信息:
location ~ \.php$ {
include snippets/fastcgi-php.conf;
#
# # With php-fpm (or other unix sockets):
fastcgi_pass unix:/var/run/php/php8.1-fpm.sock;
# # With php-cgi (or other tcp sockets):
# fastcgi_pass 127.0.0.1:9000;
#}
但是我的系统上没有安装 php8.1-fpm.sock:
我在 nginx 的 error.log 中收到以下错误:
2022/06/21 18:01:39 [crit] 2058#2058: *1 connect() to unix:/var/run/php/php8.1-fpm.sock failed (2: No such file or directory) while connecting to upstream, client: 127.0.0.1, server: _, request: "GET /w3_scalar.php HTTP/1.1", upstream: "fastcgi://unix:/var/run/php/php8.1-fpm.sock:", host: "localhost"
还:
@lc2530hz:/var/run/php$ ls
php8.1-fpm.pid
没有给我有关 php8.1-fpm.sock 的任何信息,请指导我如何安装 php8.1-fpm.sock。
我找到了以下命令:
$ sudo apt install php php-cli php-fpm php-json php-mysql php-zip php-gd php-mbstring php-curl php-xml php-pear php-bcmath
但是我的系统上已经安装了 php。请指导我如何在 Ubuntu 18.04 上安装 php8.1-fpm.sock。
祖尔菲。
@Eugen Rieck WWW.conf 的未注释内容:
; pool name ('www' here)
[www]
; will be used.
user = www-data
group = www-data
listen = /run/php/php8.1-fpm.sock
; Note: This value is mandatory.
pm = dynamic
; Note: This value is mandatory.
pm.max_children = 5
; Default Value: (min_spare_servers + max_spare_servers) / 2
pm.start_servers = 2
pm.min_spare_servers = 1
pm.max_spare_servers = 3
请指导我如何运行 php8.1-fpm.sock
祖尔菲。
答案1
伪.sock
文件安装php8.1-fpm
有
- 未运行(不太可能,因为
.pid
文件已存在) - 它的插座在其他地方(最有可能)
套接字的位置在池配置文件中设置/etc/php
,该文件属于您的 PHP 版本和应用程序池(通常是“www”)