所以,我正在尝试在我的新服务器上设置phpMyAdmin,但我无法进入设置,因为我提示使用.htaccess密码messagebox,需要用户名/密码。
/etc/phpmyadmin
文件夹中的apache.conf如下所示:
# phpMyAdmin default Apache configuration
Alias /phpmyadmin /usr/share/phpmyadmin
<Directory /usr/share/phpmyadmin>
Options FollowSymLinks
DirectoryIndex index.php
<IfModule mod_php5.c>
<IfModule mod_mime.c>
AddType application/x-httpd-php .php
</IfModule>
<FilesMatch ".+\.php$">
SetHandler application/x-httpd-php
</FilesMatch>
php_flag magic_quotes_gpc Off
php_flag track_vars On
php_flag register_globals Off
php_admin_flag allow_url_fopen Off
php_value include_path .
php_admin_value upload_tmp_dir /var/lib/phpmyadmin/tmp
php_admin_value open_basedir /usr/share/phpmyadmin/:/etc/phpmyadmin/:/var/lib/phpmyadmin/:/usr/share/php/php-gettext/:/usr/share/javascript/:/usr/share/php/tcpdf/
</IfModule>
</Directory>
# Authorize for setup
<Directory /usr/share/phpmyadmin/setup>
<IfModule mod_authz_core.c>
<IfModule mod_authn_file.c>
AuthType Basic
AuthName "phpMyAdmin Setup"
AuthUserFile /etc/phpmyadmin/htpasswd.setup
</IfModule>
Require valid-user
</IfModule>
</Directory>
我已经检查了htpasswd.setup
文件,其中包含:
admin:*
但是,当我输入admin
并将密码字段留空时,服务器会拒绝我。 apache2 error.log说:
[Fri Mar 04 12:07:05.812975 2016] [auth_basic:error] [pid 3449] [client 95.112.247.64:50581] AH01617: user admin: authentication failure for "/phpmyadmin/setup": Password Mismatch
我之前做过什么错吗?因为这对我来说根本没有意义。
答案 0 :(得分:1)
您似乎已从发行版的打包版本安装了phpMyAdmin,因此安装时出现问题。正如Lelio Faieta指出的那样,这不是直接来自phpMyAdmin,它是你的软件包维护者已经实现的保护,所以你可能应该直接从你的发行版中寻求支持。
首先尝试重新安装/重新配置。
使用Debian / Ubuntu:dpkg-reconfigure --plow phpmyadmin
CentOS似乎没有重新配置选项。
如果失败,我不会预料到您无法重置密码的任何原因。例如,与控制用户或系统数据库用户不同,用户名/密码不是(可能)在其他任何地方使用,因此您可以(应该能够安全地)更改密码:
sudo htpasswd /etc/phpmyadmin/htpasswd.setup admin
或者甚至更好,我个人添加了一个新帐户并忘记了&#39; admin&#39;:
sudo htpasswd /etc/phpmyadmin/htpasswd.setup yunowork
虽然从技术上讲,如果其他人知道管理员密码,这可能会使您容易受到攻击,但我认为您的发行版会生成密码,而且运行安装脚本与使用数据库访问权限不同。无论如何你都很可能会很好。