无法login到phpMyAdmin,没有显示错误

我有我的Linux电脑上正确的MySQL设置,但我想要一个更好的方式input数据到数据库除了terminal。 为此,我下载了phpMyAdmin。 但是,当我尝试从index.phplogin到phpMyAdmin,它不会做任何事情。 似乎只是刷新页面而不做任何事情。 我正在input正确的MySQL用户名和密码。 有什么问题?

这里是我点击“去”后显示的屏幕截图。

在这里输入图像说明

当保存php_session的路径没有正确设置时,这是一个可能的问题:

存储会话的目录不存在,或者php没有足够的权限来写入。

要定义php_session目录,只需将以下行添加到php.ini:

session.save_path="/tmp/php_session/" 

并给http服务器写入权限。

通常,http服务器作为组守护程序中的用户守护程序运行。 如果是这样的话,下面的命令将使它:

 chown -R :daemon /tmp/php_session chmod -R g+wr /tmp/php_session restart http server. 

如果会话文件夹不可写,则登录失败。 要检查,请在您的Web目录中创建一个PHP文件:

 <?php $sessionPath = 'undefined'; if (!($sessionPath = ini_get('session.save_path'))) { $sessionPath = isset($_ENV['TMP']) ? $_ENV['TMP'] : sys_get_temp_dir(); } if (!is_writeable($sessionPath)) { echo 'Session directory "'. $sessionPath . '"" is not writeable'; } else { echo 'Session directory: "' . $sessionPath . '" is writeable'; } 

如果会话文件夹不可写也可以

sudo setfacl -R -mu:www-data:rwx <session directory>或chmod 777 sudo setfacl -R -mu:www-data:rwx <session directory>

我解决了我的问题与MariaDB和phpmyadmin我从官方的phpmyadmin网站下载添加CentOS 7

 session.save_path = "/var/lib/php/session" 

/etc/php.ini

 chown -R :lighttpd /var/lib/php/session 

之后我也重启了php-fpm和lighttpd

在我的情况下,解决方案是正确设置Apache设置:

 ProxyPassReverseCookiePath 

这是必需的,因为ProxyPassProxyPassReverse正在使用,但Cookie路径不会自动更改。

如果PHPMyAdmin显示会话未找到或任何东西,当用POST发送密码时,这将是很好的。

你有一个.htaccess文件的父目录之一,通过做一个301重定向从网址剥离index.php?

301重定向丢弃表单数据并重定向您,就好像您没有提交任何内容。 所以你回到登录页面。

所以你应该用一行RewriteEngine On在phpmyadmin目录下创建一个本地的.htaccess文件。 这将覆盖以前的重写规则为无。

Chrome可能需要清除浏览器缓存,积极缓存301重定向。

在我的情况下,硬盘已满。

使用df -h检查硬盘上剩余的空间,如果需要,可以使用sudo apt-get clean命令释放一些空间,这将删除安装文件。

我希望这将有助于未来的用户。

我迟到了游戏,但在亚马逊Linux AMI我无法登录到phpmyadmin …它只是刷新登录屏幕没有错误。

我已经解决了下面的命令

 sudo chmod -R 755 /var/lib/php/session 
  1. 尝试在网上搜索phpMyAdmin的安装或设置指南。 看看其中的两三个,确保你已经覆盖了所有必要的步骤。 (如果您已经这样做,请包括您在问题中遵循了哪些指南)。
  2. 看看是否有助于编辑config.inc.php(acecoder也提到了这一点)。
  3. 检查本指南是否有帮助。
  4. 你有哪些发行版? 尝试搜索与“phpMyAdmin指南”或“phpMyAdmin安装howto”一起使用的发行版的名称。
  5. 如果您在此过程中遇到错误,请在此处输入错误文本(如果长度太短,则通过类似Pastebin的网站进行粘贴)。

你确定mysql正在运行吗? 在导入数据库并填充包含mysql数据库的卷之后,我遇到了同样的问题。 更改各种权限并清除会话后,我尝试重新启动mysql(/etc/init.d/mysql restart),因为卷已满而失败。 增加/ var并成功启动mysql后,我能够登录到phpmyadmin就好了。

如果你有这样的错误:

主机“host_name”由于连接错误而被阻塞。

以root身份登录你的mysql并运行flush hosts命令

1.- mysql -u root -p

2.- mysql>刷新主机

在此之后,我可以再次登录phpmyadmin

当登录失败时,phpMyAdmin将显示错误。 如果没有, 这意味着你的设置有错误

最有可能检查的地方是你的php.ini设置。 由于似乎没有phpMyAdmin兼容设置的官方列表,这主要是试错。

确保你已经启用了需要启用的东西 。 同时检查你是否没有启用不常见的 php.ini设置(如enable_post_data_reading = Off ),因为phpMyAdmin认为它们是“通常的”。

为了便于调试,从一个干净的默认php.ini文件开始,然后逐行调整它们以查看哪个设置导致错误。 (不要忘记,在更改php.ini文件以进行更改后,您需要重新启动服务器。)

在我的情况下,这是由于一个旧的Apache会议。 停止Apache,清除sessions.save_path目录中的所有挂起的会话(例如: /var/lib/php/session )并重新启动Apache。

我运行这些命令,它为我工作:

 sudo service httpd restart sudo service mysqld stop sudo service mysqld start 

确保在$cfg['blowfish_secret']值中的'config.inc.php'中设置一个32字符长的随机密钥。 这为我解决了。