X3R*_*3R0 -1 php apache2 20.04
我将PHP
版本从更新7.2
到8.0.5
我按照本指南更新了我的 PHP
\n我运行这个sudo apt-get purge php7.*
来删除我的 php 7 版本。
现在,当我浏览我的网站时,我只得到 php codeliek
\n<?php\n\n/* ton of code here */\n
Run Code Online (Sandbox Code Playgroud)\n当我启用
\nsudo a2enmod proxy_fcgi setenvif\nsudo a2enconf php8.0-fpm\n
Run Code Online (Sandbox Code Playgroud)\n我收到一个错误
\nService Unavailable\nThe server is temporarily unable to service your request due to maintenance downtime or capacity problems. Please try again later\n
Run Code Online (Sandbox Code Playgroud)\n当浏览网站时
\n[Sat May 22 12:21:03.453315 2021] [proxy:error] [pid 511723] (2)No such file or directory: AH02454: FCGI: attempt to connect to Unix domain socket /run/php/php8.0-fpm.sock (*) fai>\n[Sat May 22 12:21:03.453398 2021] [proxy_fcgi:error] [pid 511723] [client 102.223.225.133:63119] AH01079: failed to make connection to backend: httpd-UDS\n
Run Code Online (Sandbox Code Playgroud)\n运行后sudo systemctl list-units --failed
\ni看到
\xe2\x97\x8f php8.0-fpm.service loaded failed failed The PHP 8.0 FastCGI Process Manager \n
Run Code Online (Sandbox Code Playgroud)\n我的阿帕奇用户是safe-www
/var/log/apache2/error.log
\n[Sat May 22 12:33:52.354558 2021] [mpm_prefork:notice] [pid 2763] AH00163: Apache/2.4.41 (Ubuntu) mod_fcgid/2.3.9 OpenSSL/1.1.1f configured -- resuming normal operations\n[Sat May 22 12:33:52.354654 2021] [core:notice] [pid 2763] AH00094: Command line: \'/usr/sbin/apache2\'\n
Run Code Online (Sandbox Code Playgroud)\n站点.错误.日志
\n[Sat May 22 12:33:54.737169 2021] [proxy:error] [pid 2765] (2)No such file or directory: AH02454: FCGI: attempt to connect to Unix domain socket /run/php/php8.0-fpm.sock (*) failed\n[Sat May 22 12:33:54.737233 2021] [proxy_fcgi:error] [pid 2765] [client 102.223.225.133:63281] AH01079: failed to make connection to backend: httpd-UDS\n
Run Code Online (Sandbox Code Playgroud)\n/var/log/apache2/error.log
\n[Sat May 22 12:45:10.817186 2021] [mpm_prefork:notice] [pid 5482] AH00163: Apache/2.4.41 (Ubuntu) mod_fcgid/2.3.9 OpenSSL/1.1.1f configured -- resuming normal operations\n[Sat May 22 12:45:10.817273 2021] [core:notice] [pid 5482] AH00094: Command line: \'/usr/sbin/apache2\n
Run Code Online (Sandbox Code Playgroud)\n站点.错误.日志
\nAH01070: Error parsing script headers\n[Sat May 22 12:45:13.311597 2021] [proxy_fcgi:error] [pid 5484] (22)Invalid argument: [client 102.223.225.133:63477] AH01075: Error dispatching request to :\n
Run Code Online (Sandbox Code Playgroud)\n[ - ] apache-htcacheclean\n [ + ] apache2\n [ + ] apparmor\n [ + ] apport\n [ + ] atd\n [ + ] chrony\n [ - ] console-setup.sh\n [ + ] cron\n [ - ] cryptdisks\n [ - ] cryptdisks-early\n [ + ] dbus\n [ + ] grub-common\n [ - ] hwclock.sh\n [ - ] iscsid\n [ - ] keyboard-setup.sh\n [ + ] kmod\n [ - ] lvm2\n [ - ] lvm2-lvmpolld\n [ + ] multipath-tools\n [ - ] open-iscsi\n [ - ] open-vm-tools\n [ + ] php8.0-fpm\n [ - ] plymouth\n [ - ] plymouth-log\n [ + ] procps\n [ - ] rsync\n [ + ] rsyslog\n [ - ] screen-cleanup\n [ + ] ssh\n [ + ] udev\n [ + ] ufw\n [ + ] unattended-upgrades\n [ - ] uuidd\n [ - ] x11-common\n
Run Code Online (Sandbox Code Playgroud)\n如果您在安装 PHP 8.0后卸载了 PHP 7.x ,那么可能存在一些重叠,从而导致 PHP 8.0 安装失效。可能需要稍微重新安装。
尝试这个:
sudo apt install --reinstall php8.0 libapache2-mod-php8.0
sudo a2enconf php8.0-fpm
sudo service apache2 restart
Run Code Online (Sandbox Code Playgroud)
这将重新加载 PHP 8.0,确保模块就位且完好无损,启用 FastCGI 进程管理器,然后重新启动 Apache。一般来说,当 PHP7.x 发生类似问题时,人们需要遵循这个过程。
后续...
有时,这AH01079: failed to make connection to backend: httpd-UDS
是由需要重新启动的错误服务引起的。我不使用 PHP8.0,所以无法猜测服务的名称,但您可以列出系统上运行的所有服务,如下所示:
sudo service --status-all
Run Code Online (Sandbox Code Playgroud)
这将为您提供一个服务列表,其中[-]
表示其处于非活动状态,并[+]
表示其正在运行。您将需要查找类似的服务php80-php-fpm
并重新启动它:
sudo service php80-php-fpm restart
Run Code Online (Sandbox Code Playgroud)
这可能会解决该问题。
如果与代理问题发生冲突...
有时,如果使用proxy_fcgi
且发送缓冲区未填充一帧数据,可能会出现问题。可以通过编辑受影响站点的 Apache 配置来解决此问题:
<IfModule proxy_module>
ProxyPassMatch ^(.*\.php)$ fcgi://127.0.0.1:9000/var/www/html/$1
</IfModule>
<IfModule mod_deflate.c>
SetOutputFilter DEFLATE
# Don't compress images
SetEnvIfNoCase Request_URI \.(?:gif|jpeg|jpg|png)$ no-gzip dont-vary
# Make sure proxies don't deliver the wrong content
Header append Vary User-Agent env=!dont-vary
</IfModule>
Run Code Online (Sandbox Code Playgroud)
希望这能解决最后的问题。
归档时间: |
|
查看次数: |
14751 次 |
最近记录: |