谁用phpMyAdmin操作51.net的MySQL成功了?我怎么弄都不行~~~~~~

iZap 2001-12-28 01:29:19
51.net A型空间,
phpMyAdmin已经上传上去了,config.inc.php3也改了,就是建库建表等等所有操作不成功。

谁弄过?
...全文
103 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
QQKiKi 2002-01-06
  • 打赏
  • 举报
回复
2.01版本可以
iZap 2002-01-06
  • 打赏
  • 举报
回复
之前已经试过了,好像不行
zzxcom 2002-01-06
  • 打赏
  • 举报
回复
哦,多谢多谢。西西。这样省很多时间
yangjian007 2001-12-28
  • 打赏
  • 举报
回复
我假设你有一份phpMyAdmin 2.1.0,
且已经会在一般机器上配置phpMyAdmin 2.1.0,
如果你在本地机器上都没有搞定,那你最好还是把phpmyadmin
的基本配置搞清楚再看本文吧。

本文不一定只使用于51.net,它适用与类似51.net(包括oso,wayall
等,当然对于它们,没有这个必要,它们有自己的管理页面)
的主页空间。

在51.net上使用phpMyAdmin有两个问题:
1 - 照一般设置,在窗口左边将显示很多数据库名(多得你数不过来),
你能在这么多的数据库中找到你自己么?

2 - 把你的数据库的用户名和密码都在主机上设置好,那谁都
可以不经授权就访问你的数据库了。

对于1,我开始时认为不太容易,可能要改源代码left.php,当我改好后,
发现我自己很愚蠢,原来1的解决比2还要简单。

解决方法:

对于1:
修改config.inc.php文件,
找到下面一行,应该在文件的开头部分:
$cfgServers[1]['only_db'] = '';
比如你的数据库名叫 mydbuser,
那么就把它改为:
$cfgServers[1]['only_db'] = 'mydbuser';

就是这么简单,这样窗口左边只显示库名为mydbuser的数据库。

为了安全,我们还要解决2。

对于2:
还是修改config.inc.php文件,不过要改代码了。
我们使用HTTP服务器认证,如果那个服务器的PHP是以
CGI方式跑的,那你就不要再继续了。(还好51.net不是!)

我假设你的用户名是:mydbuser

在config.inc.php文件的开始加上如下代码:

if ( !isset($PHP_AUTH_USER) || $PHP_AUTH_USER!="mydbuser" )
{
Header("WWW-Authenticate: Basic realm=\"MySQL Logon\"");
Header("HTTP/1.0 401 Unauthorized");
die("MySQL Login fail!");
}

注意Header里的内容不要弄错哟。

另外对下面的设置进行修改,如下(这些都在文件的开始部分):

$cfgServers[1]['host'] = 'localhost';
$cfgServers[1]['port'] = '';
$cfgServers[1]['adv_auth'] = false;
$cfgServers[1]['stduser'] = '';
$cfgServers[1]['stdpass'] = '';
$cfgServers[1]['user'] = $PHP_AUTH_USER;
$cfgServers[1]['password'] = $PHP_AUTH_PW;
$cfgServers[1]['only_db'] = $PHP_AUTH_USER;

因为大多数用户的用户名和数据库名一样,所以上面的
最后一行就如此设定了。

好!现在可以上传试试了,注意php文件要用asc方式
上传哦。

 

56,675

社区成员

发帖
与我相关
我的任务
社区描述
MySQL相关内容讨论专区
社区管理员
  • MySQL
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧