当我使用本地网络连接连接到网络时,我无法建立与服务器的连接。它返回以下错误:
Warning: mysqli::mysqli(): (HY000/2002): A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond. in C:\xxxx\htdocs\xxxx.xxxx\class\class.mysql.php on line 11
Connect Error (2002) A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond.
Warning: mysqli::close(): Couldn't fetch mysql in C:\xxxx\htdocs\xxxx.xxxx\class\class.mysql.php on line 59
现在当我tether
通过手机时,连接服务器时没有问题。
我对网络的了解非常无知,如果这很明显,请原谅我,但是有些问题会阻止我与服务器的连接?
答案 0 :(得分:1)
我已经找到了我遇到的问题的答案。我正在下面记录,以防它帮助其他任何人。
=========================
我最近遇到了第4版Kevin Yank的“构建自己的数据驱动网站”时遇到的问题。
某些软件包和操作系统之间似乎存在不兼容性。特别是,当在使用Apache的Windows Vista上运行时尝试连接到MySQL时,这会影响PHP 5.3。这不是一个真正的错误,而是从IPv4到IPv6的过渡中不同元素的距离之间的差异。
基本上,当PHP尝试连接到数据库时,它会超时,因为它无法识别localhost,只有127.0.0.1,并产生以下错误消息:
=========================
警告:mysqli_connect()[function.mysqli-connect]:[2002]连接尝试失败,因为连接方没有(尝试通过tcp:// localhost:3306连接)在C:\ Program Files \ Apache中第2行的Software Foundation \ Apache2.2 \ htdocs \ phpmysql-4 \ chapter4 \ connect \ index.php
警告:mysqli_connect()[function.mysqli-connect] :( HY000 / 2002):连接尝试失败,因为连接方在一段时间后没有正确响应,或者建立的连接失败,因为连接的主机未能响应。在第2行的C:\ Program Files \ Apache Software Foundation \ Apache2.2 \ htdocs \ phpmysql-4 \ chapter4 \ connect \ index.php
致命错误:第2行的C:\ Program Files \ Apache Software Foundation \ Apache2.2 \ htdocs \ phpmysql-4 \ chapter4 \ connect \ index.php超出了30秒的最长执行时间
=========================
这个问题有两种可能的解决方案:
=========================
在您希望连接到MySQL数据库的所有PHP文件中将“localhost”替换为“127.0.0.1”
在计算机上找到“hosts”文件。它通常位于如下位置:
C:\ Windows \ System32下\驱动程序\等\主机
打开它,并注释掉阻止localhost正确“映射”的行;换句话说,改变
:: 1 localhost
到
事实上,此解决方案之前已在SitePoint论坛中提供,但没有详细说明。
http://www.sitepoint.com/forums/showthread.php?t=637612
=========================
在以下链接的PHP论坛中详细描述了该问题:
http://bugs.php.net/bug.php?id=45150
请注意 - 据我所知 - Windows XP没有此问题,因为它仅配置为IPv4。 Vista遇到了一个问题,因为它设计用于处理这两个问题,就像Windows 7一样。
另外,我应该提一下,不推荐使用PHP 5.2和上述书籍,因为该版本中存在一个错误 - 一个名副其实的错误 - 导致Apache在尝试打开“deletejoke”文件时崩溃。