![PHPMyAdmin 在 Windows 10 中自动登录,但在 Ubuntu 桌面 15.10 中不自动登录](https://linux22.com/image/1133893/PHPMyAdmin%20%E5%9C%A8%20Windows%2010%20%E4%B8%AD%E8%87%AA%E5%8A%A8%E7%99%BB%E5%BD%95%EF%BC%8C%E4%BD%86%E5%9C%A8%20Ubuntu%20%E6%A1%8C%E9%9D%A2%2015.10%20%E4%B8%AD%E4%B8%8D%E8%87%AA%E5%8A%A8%E7%99%BB%E5%BD%95.png)
当我安装 WAMP 并进入http://localhost/phpmyadmin
Windows 10 时,我会自动登录,但在 Ubuntu Desktop 15.10 中,它总是要求我输入 root 用户和 root 密码;虽然这两个会自动出现,但我总是需要单击“去“ 登录...
- 为什么在 Windows 10 中没有发生这种情况并且我自动登录?
- 在 Ubuntu 中如何自动执行此过程?我在界面中没有找到任何这样的选项。
我应该指出,我是唯一一个使用这个系统的人 - 它在我的个人电脑上。
答案1
前言
我以前也遇到过这种情况。
我认为您知道启用无密码 root 登录数据库的风险;此外,为了使此功能有效,您必须将 root 的密码以纯文本形式存储在文件中。如果您的配置合理,则任何 Web 服务器用户都无法读取该文件,但默认情况下,系统中的每个人都可以读取该文件。请记住这一点。
解决方案
以 root 身份使用任意编辑器进行编辑/etc/phpmyadmin/config.inc.php
;将会有两/* Authentication type */
行,每行后面跟着一行//$cfg['Servers'][$i]['auth_type'] = 'cookie';
;您必须//$cfg['Servers'][$i]['auth_type'] = 'cookie';
根据 PHPMyAdmin 的安装方式编辑其中一行:
- 如果你使用 配置了 PHPMyAdmin
dbconfig-common
,请选择第一个(块内的那个if (!empty($dbname)) {}
); - 如果您没有使用 配置PHPMyAdmin
dbconfig-common
,请选择第二个(任何块外面的那个);
将适当的行替换为以下内容:
$cfg['Servers'][$i]['auth_type'] = 'config';
$cfg['Servers'][$i]['username'] = 'root';
$cfg['Servers'][$i]['password'] = 'password'; // Replace password with the actual root password
就是这样。从现在起,每次您访问 PHPMyAdmin 的索引页时,您都会自动以 root 身份登录。
笔记
至于为什么 Windows 10 和 Ubuntu 15.10 的行为不同,它们的行为方式本来就不一样。可能只是它们的默认配置不同,然而如果我没记错的话PHPMyAdmin 在以前的版本中配置方式与 Windows 相同(很多版本之前,但不要认为这是理所当然的)。它们本来就不应该以相同的方式配置,而且确实如此。
与往常一样,Ubuntu 上分发的软件包可能会受到上游修改:软件包的配置方式始终取决于软件包的维护者,并且不必与 Windows 配置相匹配。
答案2
我可能对 #1 有一个答案。我猜是因为连接来自localhost
或本地计算机,所以 Windows 10 已登录。