我创建了一个搜索引擎zoken.co.cc
,并选择手动提交网站并下载文件populate.php通过在其他ftp上传populate.php并打开
它将自身索引在数据库中。
例如:网站www.abc.com
希望在我的搜索引擎中提交网站并选择自动提交和下载文件(populate.php
)并在ftp服务器上传。
并打开页面www.abc.com/populate.php
。
然后出现一个页面
Warning: mysql_connect() [function.mysql-connect]: Host '10.1.1.27' is not allowed to connect to this MySQL server in /home/a1091216/public_html/populate.php on line 10
ERROR: Could not connect to database
我知道他和我的FTP服务器不同但可以保存。
答案 0 :(得分:1)
这是因为不允许远程服务器使用该用户名连接到数据库服务器。您可以将数据库用户设置为允许来自%
的连接,这意味着“使用此用户名登录的用户可以从任何主机连接到数据库服务器”。
在别人的服务器上运行PHP脚本真的很重要吗?我可以看到以下问题:
用户不信任您的PHP脚本,最终无法提交。
用户没有在服务器上安装PHP,或者正在运行服务器来为使用ASP构建的站点提供服务,导致PHP脚本无效。
PHP文件将包含数据库用户名和密码。谁说网站管理员不会从PHP文件中获取这些文件并弄乱你的数据库(即使用户帐户只允许从1个表中读/写)?
如果我是你,我会让他们下载一个带有随机字符串的文本文件。请他们将其上传到他们提交的网站的根目录。然后每隔5分钟(直到站点被标记为已验证),让您的服务器出去并使用CURL从其站点中检索文本文件。检查里面的随机字符串,然后填充数据库。
答案 1 :(得分:0)
是的,如果请求该连接的脚本来自另一台服务器,则可以连接到位于一台服务器上的mysql数据库..。
首先要确保主机mysql服务器已打开网络,并在防火墙上打开端口3306(我认为这是号码)。我希望这两个都是默认关闭的
就个人而言,我对这样做非常怀疑。让mysql打开互联网让我非常不舒服。建议你尝试找到一个更好的方法来做到这一点。
重新阅读并意识到我应该更清楚。在my.cnf(mysql配置文件,可能在/ etc中)有一个变量,比如networking = no或skip-networking;我忘记了具体细节。无论如何,需要设置为启用网络,然后您需要重新启动mysqld。