20

我在我的 linux 计算机上正确设置了 MySQL,但是我想要一种更好的方法来将数据输入到除了终端之外的数据库中。为此,我下载了 phpMyAdmin。但是,当我尝试从 index.php 登录到 phpMyAdmin 时,它什么也没做。似乎只是刷新页面而不做任何事情。我输入了正确的 MySQL 用户名和密码。问题是什么?

这是我单击“开始”后显示的屏幕截图。

在此处输入图像描述

4

14 回答 14

14

当保存 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

service httpd restart
于 2013-08-07T16:47:52.820 回答
4

如果会话文件夹不可写,则登录失败。要检查这一点,请在您的 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 -m u:www-data:rwx <session directory>或 chmod 777 sudo setfacl -R -m u:www-data:rwx <session directory> -

于 2015-04-01T16:43:20.180 回答
1

我用 MariaDB 和 phpmyadmin 在 CentOS 7 上解决了我的问题,我从官方 phpmyadmin 站点下载了

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

/etc/php.ini

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

之后我还重新启动了 php-fpm 和 lighttpd

于 2014-10-12T20:19:56.347 回答
1

就我而言,解决方案是正确设置 Apache 设置:

ProxyPassReverseCookiePath

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

如果 PHPMyAdmin 在使用 POST 发送密码时显示诸如 session not found 之类的东西,那就太好了。

于 2016-02-18T13:50:43.563 回答
1

您是否在某个父目录中有一个 .htaccess 文件,该文件通过执行 301 重定向从 url 中剥离 index.php?

301 重定向会丢弃表单数据并重定向您,就好像您没有提交任何内容一样。因此,您将返回登录页面。

因此,您应该在 phpmyadmin 目录中用一行创建一个本地 .htaccess 文件RewriteEngine On。这会将之前的重写规则覆盖为空。

由于 Chrome 会主动缓存 301 重定向,您可能需要清除浏览器缓存。

于 2016-05-12T15:07:08.390 回答
1

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

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

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

于 2016-10-05T12:44:43.457 回答
1

我运行了这些命令,它对我有用:

sudo service httpd restart
sudo service mysqld stop
sudo service mysqld start
于 2017-01-09T23:37:47.280 回答
1

我玩游戏迟到了,但是在 Amazon linux AMI 上我无法登录到 phpmyadmin ...它只是不断刷新登录屏幕而没有错误。

我已经用下面的命令修复了

sudo chmod -R 755 /var/lib/php/session
于 2017-07-12T16:54:35.407 回答
0
  1. 尝试在网上搜索 phpMyAdmin 的安装或设置指南。查看其中的两个或三个,并确保您已涵盖所有必需的步骤。(如果您已经这样做了,请在问题中包含您遵循的指南)。
  2. 看看它是否有助于编辑 config.inc.php(acecoder 也提到了这一点)。
  3. 检查本指南是否有帮助。
  4. 你在哪个发行版上?尝试搜索您正在使用的发行版的名称以及“phpMyAdmin guide”或“phpMyAdmin setup howto”。
  5. 如果您在此过程中遇到错误,请在此处发布错误文本,如果它很短(或者如果它很长,则通过类似 pastebin 的网站粘贴)。
于 2012-06-13T22:34:57.130 回答
0

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

于 2014-02-24T23:45:47.620 回答
0

如果您有如下错误:

由于许多连接错误,主机“host_name”被阻止。

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

1.- mysql -u root -p

2.- mysql > 刷新主机

在此之后,我能够再次登录 phpmyadmin

于 2014-10-15T07:45:56.123 回答
0

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

最有可能检查的地方是您的php.ini设置。由于似乎没有与 phpMyAdmin 兼容的设置的官方列表,因此主要是反复试验。

确保您已启用需要启用的内容。还要检查您是否没有启用不常见的php.ini 设置(如enable_post_data_reading = Off),因为 phpMyAdmin 假定它们是“常用设置”。

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

于 2015-02-23T11:46:17.553 回答
0

就我而言,这是由于旧的 Apache 会话所致。停止 Apache,清除您sessions.save_path目录中的所有待处理会话(例如/var/lib/php/session:)并重新启动 Apache。

于 2016-04-12T19:17:44.313 回答
0

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

于 2017-04-05T11:18:25.490 回答