use*_*ser 9 php apache fastcgi apache-modules apache2.4
我有这样的虚拟主机设置
<VirtualHost *:80>
ServerAdmin webmaster@localhost
DocumentRoot /var/www/html
<FilesMatch \.php$>
SetHandler "proxy:unix:/var/run/php/php5.6-fpm.sock|fcgi://localhost/"
</FilesMatch>
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
Run Code Online (Sandbox Code Playgroud)
phpinfo() 显示我的网站有 php 5.6 版本。好的!
现在我正在尝试使用 Mod_Ruid2 来限制权限。我将以下内容添加到我的虚拟主机
RDocumentChRoot /var /www/html
<Directory "/www/html/">
Require all granted
RMode config
RUidGid admin0 admin0
</Directory>
Run Code Online (Sandbox Code Playgroud)
尝试访问该网站后,我在日志中看到错误
[Sun Oct 13 16:09:02.492117 2019] [proxy:error] [pid 13571] (2)No such file or directory: AH02454: FCGI: attempt to connect to Unix domain socket /var/run/php/php5.6-fpm.sock (*) failed
[Sun Oct 13 16:09:02.492194 2019] [proxy_fcgi:error] [pid 13571] [client 192.168.0.110:47622] AH01079: failed to make connection to backend: httpd-UDS
Run Code Online (Sandbox Code Playgroud)
告诉我,我做错了什么?
小智 10
我刚刚在尝试在 CentOS 8 上运行 apache(2.4) + php(7.2) 时遇到了同样的问题。
[Thu Jan 09 06:59:10.420499 2020] [proxy:error] [pid 121:tid 139846433412864] (2)No such file or directory: AH02454: FCGI: attempt to connect to Unix domain socket /run/php-fpm/www.sock (*) failed
[Thu Jan 09 06:59:10.420535 2020] [proxy_fcgi:error] [pid 121:tid 139846433412864] [client 127.0.0.1:55580] AH01079: failed to make connection to backend: httpd-UDS
Run Code Online (Sandbox Code Playgroud)
为了解决这个问题,我必须启动一个名为“php-fpm”的服务(sudo systemctl enable --now php-fpm),这导致我遇到另一个错误:
[09-Jan-2020 07:07:09] ERROR: unable to bind listening socket for address '/run/php-fpm/www.sock': No such file or directory (2)
[09-Jan-2020 07:07:09] ERROR: FPM initialization failed
Run Code Online (Sandbox Code Playgroud)
这是由于文件夹 /run/php-fpm 不存在造成的。
mkdir -p /run/php-fpm/
Run Code Online (Sandbox Code Playgroud)
之后,再次启动 php-fpm,这次没有错误,apache+php 工作得非常顺利。
请注意,您的错误和我的错误之间存在细微差别,路径有点不同。您应该创建“/var/run/php/”,而不是“/run/php-fpm/”。
希望这可以帮助
小智 6
我遇到了同样的问题,就我而言,我可以通过运行代码重新启动 PHP fpm 服务来修复它:
sudo service phpx.x-fpm restart
操作系统:centos 网络服务器:nginx