Fur*_*ris 1 php apache2 phpmyadmin symfony server
我刚刚开始我的服务器之旅,所以我购买了一个 VPN。我在那里安装了ubuntu 18、apache 2.4、php8、webmin、mysql等。我有两个基于symfony 5的网站托管在这里,没有任何问题。我使用 Ubuntu PPA安装了PHPmyAdmin : https://github.com/phpmyadmin/phpmyadmin/wiki/DebianUbuntu#ubuntu-ppa
当我访问mysite.com/phpmyadmin时一切都很好。我使用凭据登录并且已登录。它正确读取数据库并按应有的方式呈现所有 UI,但随后抛出错误 500 PHPmyadmin 的屏幕截图
它在 apache 日志中抛出错误:
[Sun Oct 10 13:00:44.298896 2021] [proxy_fcgi:error] [pid 30370:tid 140207772845824] AH01071: Got error 'PHP message: PHP Fatal error: Uncaught Error: Unknown named parameter $$response in /usr/share/php/Symfony/Component/DependencyInjection/ContainerBuilder.php:1140\nStack trace:\n#0 /usr/share/php/Symfony/Component/DependencyInjection/ContainerBuilder.php(1140): ReflectionClass->newInstanceArgs()\n#1 /usr/share/php/Symfony/Component/DependencyInjection/ContainerBuilder.php(604): Symfony\\Component\\DependencyInjection\\ContainerBuilder->createService()\n#2 /usr/share/php/Symfony/Component/DependencyInjection/ContainerBuilder.php(569): Symfony\\Component\\DependencyInjection\\ContainerBuilder->doGet()\n#3 /usr/share/phpmyadmin/libraries/classes/Routing.php(186): Symfony\\Component\\DependencyInjection\\ContainerBuilder->get()\n#4 /usr/share/phpmyadmin/index.php(18): PhpMyAdmin\\Routing::callControllerForRoute()\n#5 {main}\n thrown in /usr/share/php/Symfony/Component/DependencyInjection/ContainerBuilder.php on line 1140'
[Sun Oct 10 13:00:44.359963 2021] [proxy_fcgi:error] [pid 30369:tid 140207873558272] AH01071: Got error 'PHP message: PHP Fatal error: Uncaught Error: Unknown named parameter $$response in /usr/share/php/Symfony/Component/DependencyInjection/ContainerBuilder.php:1140\nStack trace:\n#0 /usr/share/php/Symfony/Component/DependencyInjection/ContainerBuilder.php(1140): ReflectionClass->newInstanceArgs()\n#1 /usr/share/php/Symfony/Component/DependencyInjection/ContainerBuilder.php(604): Symfony\\Component\\DependencyInjection\\ContainerBuilder->createService()\n#2 /usr/share/php/Symfony/Component/DependencyInjection/ContainerBuilder.php(569): Symfony\\Component\\DependencyInjection\\ContainerBuilder->doGet()\n#3 /usr/share/phpmyadmin/libraries/classes/Routing.php(186): Symfony\\Component\\DependencyInjection\\ContainerBuilder->get()\n#4 /usr/share/phpmyadmin/index.php(18): PhpMyAdmin\\Routing::callControllerForRoute()\n#5 {main}\n thrown in /usr/share/php/Symfony/Component/DependencyInjection/ContainerBuilder.php on line 1140'
[Sun Oct 10 13:00:44.411282 2021] [proxy_fcgi:error] [pid 30370:tid 140207898736384] AH01071: Got error 'PHP message: PHP Fatal error: Uncaught Error: Unknown named parameter $$response in /usr/share/php/Symfony/Component/DependencyInjection/ContainerBuilder.php:1140\nStack trace:\n#0 /usr/share/php/Symfony/Component/DependencyInjection/ContainerBuilder.php(1140): ReflectionClass->newInstanceArgs()\n#1 /usr/share/php/Symfony/Component/DependencyInjection/ContainerBuilder.php(604): Symfony\\Component\\DependencyInjection\\ContainerBuilder->createService()\n#2 /usr/share/php/Symfony/Component/DependencyInjection/ContainerBuilder.php(569): Symfony\\Component\\DependencyInjection\\ContainerBuilder->doGet()\n#3 /usr/share/phpmyadmin/libraries/classes/Routing.php(186): Symfony\\Component\\DependencyInjection\\ContainerBuilder->get()\n#4 /usr/share/phpmyadmin/index.php(18): PhpMyAdmin\\Routing::callControllerForRoute()\n#5 {main}\n thrown in /usr/share/php/Symfony/Component/DependencyInjection/ContainerBuilder.php on line 1140'
[Sun Oct 10 13:14:58.028291 2021] [proxy_fcgi:error] [pid 30369:tid 140207798023936] AH01071: Got error 'PHP message: PHP Fatal error: Uncaught Error: Unknown named parameter $$response in /usr/share/php/Symfony/Component/DependencyInjection/ContainerBuilder.php:1140\nStack trace:\n#0 /usr/share/php/Symfony/Component/DependencyInjection/ContainerBuilder.php(1140): ReflectionClass->newInstanceArgs()\n#1 /usr/share/php/Symfony/Component/DependencyInjection/ContainerBuilder.php(604): Symfony\\Component\\DependencyInjection\\ContainerBuilder->createService()\n#2 /usr/share/php/Symfony/Component/DependencyInjection/ContainerBuilder.php(569): Symfony\\Component\\DependencyInjection\\ContainerBuilder->doGet()\n#3 /usr/share/phpmyadmin/libraries/classes/Routing.php(186): Symfony\\Component\\DependencyInjection\\ContainerBuilder->get()\n#4 /usr/share/phpmyadmin/index.php(18): PhpMyAdmin\\Routing::callControllerForRoute()\n#5 {main}\n thrown in /usr/share/php/Symfony/Component/DependencyInjection/ContainerBuilder.php on line 1140'
Run Code Online (Sandbox Code Playgroud)
我不知道出了什么问题。
感谢@nakashu 我找到了解决方案。
根据 symfony 问题,他链接: https://github.com/symfony/symfony/commit/8e34978e4e2c4bf7dac97e44e904368c4cfb54f8
我知道这只是临时解决方案,但我替换了/usr/share/php/Symfony/Component/DependencyInjection/ContainerBuilder.php:1140中的代码
我变了:
$service = null === $r->getConstructor() ? $r->newInstance() : $r->newInstanceArgs($arguments);
到:
$service = null === $r->getConstructor() ? $r->newInstance() : $r->newInstanceArgs(array_values($arguments));
现在phpMyAdmin可以工作了。
| 归档时间: |
|
| 查看次数: |
4054 次 |
| 最近记录: |