簡體   English   中英

phpmyadmin 中登錄前的棄用錯誤和登錄后的空白屏幕

[英]Deprecation errors before and blank screen after login in phpmyadmin

我正在原始服務器上安裝 phpmyadmin。 這是序列/層次結構:

Azure 實例 -> Debian 11 -> php8.2 -> MariaDB -> phpMyAdmin

我確實運行了mysql_secure_installation並運行了以下命令:

sudo apt -y install wget php-cgi php8.2-mysqli php-pear php-mbstring libapache2-mod-php php-common php-phpseclib php-mysql

當我 go 到 mydomain.com/phpmyadmin 時,我得到了一堆錯誤。 這是一個例子:

./../../php/Twig/Loader/FilesystemLoader.php#40 realpath() 中的棄用通知:不推薦將 null 傳遞給字符串類型的參數 #1 ($path)

回溯

FilesystemLoader.php#40: realpath(NULL)./libraries/classes/Template.php#59: Twig\Loader\FilesystemLoader->__construct(string '/usr/share/phpmyadmin//templates/')./libraries/classes /Theme.php#103:PhpMyAdmin\Template->__construct()./libraries/classes/Theme.php#174:PhpMyAdmin\Theme->__construct()./libraries/classes/ThemeManager.php#306:PhpMyAdmin\Theme ::load( 字符串 './themes/metro', 字符串 '/usr/share/phpmyadmin/./themes/metro/', )./libraries/classes/ThemeManager.php#89: PhpMyAdmin\ThemeManager->loadThemes( )./libraries/classes/ThemeManager.php#129: PhpMyAdmin\ThemeManager->__construct()./libraries/classes/ThemeManager.php#397: PhpMyAdmin\ThemeManager::getInstance()./libraries/common.inc.php #315:PhpMyAdmin\ThemeManager::initializeTheme()./index.php#23:require_once(./libraries/common.inc.php)

上面的唯一修復似乎是抑制錯誤 我還在我的 apache 錯誤日志中看到錯誤。 有很多而且它們很相似,但這里有一個例子:

PHP 致命錯誤:未捕獲 mysqli_sql_exception:您未在 /usr/share/phpmyadmin/libraries/classes/Dbi/DbiMysqli 中使用二進制日志記錄。php:199\n堆棧跟蹤:\n#0 /usr/share/phpmyadmin/libraries/classes /Dbi/DbiMysqli.php(199): mysqli->query()\n#1 /usr/share/phpmyadmin/libraries/classes/DatabaseInterface.php(316): PhpMyAdmin\Dbi\DbiMysqli->realQuery()\n #2 /usr/share/phpmyadmin/libraries/classes/DatabaseInterface.php(1869): PhpMyAdmin\DatabaseInterface->tryQuery()\n#3 /usr/share/phpmyadmin/libraries/classes/Menu.php(573): PhpMyAdmin\DatabaseInterface->fetchResult()\n#4 /usr/share/phpmyadmin/libraries/classes/Menu.php(107):PhpMyAdmin\Menu->_getServerTabs()\n#5 /usr/share/phpmyadmin/libraries /classes/Menu.php(70): PhpMyAdmin\Menu->_getMenu()\n#6 /usr/share/phpmyadmin/libraries/classes/Header.php(445): PhpMyAdmin\Menu->getDisplay()\n #7 /usr/share/phpmyadmin/libraries/classes/Response.php(323): PhpMyAdmin\Header->getDisplay()\n#8 /usr/share/phpmyadmin/libraries/classe s/Response.php(336): PhpMyAdmin\Response->_getDisplay()\n#9 /usr/share/phpmyadmin/libraries/classes/Response.php(495): PhpMyAdmin\Response->_htmlResponse()\n# 10 [內部函數]: PhpMyAdmin\Response->response()\n#11 {main}\n throw in /usr/share/phpmyadmin/libraries/classes/Dbi/DbiMysqli.php on line 199

當我登錄到 phpmyadmin 時,出現空白屏幕。 我已經卸載並重新安裝了幾次,但我得到了同樣的錯誤和空白屏幕。

MariaDB 正在運行並顯示消息狀態:“現在接受您的 SQL 請求...”並且我已經測試過 php 也可以正常工作 - 使用測試腳本並使用 phpinfo();

你能幫我確定原因,也許還有解決辦法嗎?

正如 phpmyadmin 團隊成員所指出的,由於某些軟件包未包含在存儲庫中,因此 Debian/Ubuntu 存在已知問題

如果您將 go 轉到第一個鏈接,則有幾個修復程序。 我的涉及 Debian,轉載如下。 這里也有多種方法(同樣,請參閱第一個鏈接),但我選擇使用涉及 Backports 的方法。

創建一個新的源文件:

sudo nano /etc/apt/sources.list.d/bullseye-backports.list

將以下行添加到上述文件中:

deb http://deb.debian.org/debian bullseye-backports main

然后運行:

apt-get update

更新 package 列表。 最后:

apt-get install -t bullseye-backports phpmyadmin

應該這樣做。 另一種解決方案是從phpmyadmin 網站卸載然后手動安裝最新版本。 那是我本來應該做的。 :-)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM