我已更新至 20.04,但并未立即测试 apache2。但在尝试使用以下命令安装 php 后:
sudo apt install php libapache2-mod-php php-mysql
当我尝试开始时,php
我得到:
PHP Fatal error: Unable to start pcre module in Unknown on line 0
当我查看返回结果时,sudo systemctl status apache2
我得到以下信息:
apache2.service - The Apache HTTP Server
Loaded: loaded (/lib/systemd/system/apache2.service; enabled; vendor preset: enabled)
Active: failed (Result: exit-code) since Sun 2020-10-18 04:23:56 EDT; 53s ago
Docs: https://httpd.apache.org/docs/2.4/
Process: 35951 ExecStart=/usr/sbin/apachectl start (code=exited, status=0/SUCCESS)
Main PID: 35968 (code=exited, status=254)
Oct 18 04:23:56 coyote-HP-250-G5-Notebook-PC systemd[1]: Starting The Apache HTTP Server...
Oct 18 04:23:56 coyote-HP-250-G5-Notebook-PC systemd[1]: Started The Apache HTTP Server.
Oct 18 04:23:56 coyote-HP-250-G5-Notebook-PC systemd[1]: apache2.service: Main process exited, c>
Oct 18 04:23:56 coyote-HP-250-G5-Notebook-PC systemd[1]: apache2.service: Failed with result 'ex>
apache2 error.log 中有相同的行php
:
PHP Fatal error: Unable to start pcre module in Unknown on line 0
PHP Fatal error: Unable to start pcre module in Unknown on line 0
答案1
虽然距离报告错误已经有一段时间了,但通常可以这样做来解决问题:
cd ~
mkdir pcre-bak
cd pcre-bak
mv /usr/local/lib/libpcre* .
这将pcre-bak
在您的主目录中创建一个名为的目录,然后您将所有libpcre
以 - 为前缀的文件从其当前目录移动到该目录。
完成后,使用以下命令启动/重新启动 apache:
sudo service apache2 restart
只要一切正常,您就可以删除该pcre-bak
目录。发生这种情况是因为 PHP 在 7.3 版中从 PCRE 切换到了 PCRE2。除非特别告知不要安装,否则 Ubuntu 20.04 将安装 PHP 7.4。
如果你需要 PCRE2,你可以这样安装:
sudo apt-get install libpcre2-dev