以前,我的站点运行在Ubuntu14.04LTS上的PHP7.1上,并升级到Ubuntu16.04。升级后,我仍然可以访问我的网站。
然后我安装并切换到PHP7.2(我没有删除PHP7.1,只禁用它)。在访问时,会显示关于数据库连接错误的laravel错误。然后在mysql和pdo_mysql中启用/etc/php/7.2/cli/php.ini。之后,我的站点只返回500个内部服务器错误。
我查了/var/log/apache2/error.log上面写着
[Tue Dec 17 11:12:36.773684 2019] [php7:error] [pid 27730] [client xxx.xxx.xxx.xxx:y] PHP Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 20480 bytes) in /var/www/project/vendor/doctrine/dbal/lib/Doctrine/DBAL/Driver/PDOConnection.php on line 31
memory_limit in /etc/php/7.2/cli/php.ini从一开始就已经是-1了。
发布于 2019-12-17 07:14:07
对于不同的PHP接口,您可能有多个配置文件。您已经编辑了cli配置。
要检查与apache2 sapi一起使用的配置,可以在文档根目录中创建一个test.php,如下所示
test.php
<?php
phpinfo();然后在浏览器中打开test.php。有一行标记为“加载配置文件”。
编辑配置,我不建议将网站的内存限制设置为-1 (不受php限制)。选择一个适合您的需求的值。它应该是128 of的倍数。更改值后重新启动Apache。当您完成时,移除test.php。
在Ubuntu和Apache上还有两件事:
选择系统默认php版本如下
update-alternatives --set php /usr/bin/php7.2选择Apache php版本如下
a2enmod php7.2
systemctl restart apache2https://stackoverflow.com/questions/59368802
复制相似问题