我的 Macbook pro 上安装了 Mac OSx(mountain Lion)、Windows 7、Fedora 17,但我无法连接到任何一个系统的本地主机,它总是告诉我无法连接。
我正在学习 mysql,从教程中,我想我必须连接到本地主机才能创建数据库和东西,但我是否必须先安装一些东西才能使其工作?
PS - 对于 Mac,我没有在系统偏好设置中启用“Web 共享”选项。 - 对于 Windows,我尝试启用 IIS,但它给出了一个错误... 我也尝试使用 cmd.exe 来解决它,但它不起作用。 - 对于 Fedora,我是新手,但我刚刚安装,我不知道为什么它不工作。
答案1
与本地主机可以通过将客户端指向本地主机域或其代表的 IP 地址来获取伪域。
例如:
firefox http://127.0.0.1/
mysql -h localhost
当客户端连接的端口上没有任何运行(监听)程序时,这些连接尝试将导致错误,例如“远程主机拒绝连接”。在上面的例子中,相关端口为 80(HTTP)和 3306(MySQL)。
答案2
与物理网卡上的连接不同,物理网卡上的连接可以是活动的/非活动的、共享的,并且必须正确设置,而本地主机连接只是指向您自己机器的快捷方式。它不会“一直处于活动状态”,您不必“连接到它”的时间超过执行命令所需的时间。
当您使用浏览器查看远程网页(比如 Facebook)时,您无需在操作系统控制面板上设置与网站的连接。您只需在浏览器地址栏上告知目的地即可。当您尝试连接到本地主机时,过程是相同的。对于客户端软件来说,服务器是否本地并不重要,如果您尝试在本地主机上查看网页,您的浏览器将表现得与外部服务器相同,只是 IP 不同。
本地主机地址只是将目的地指向您自己的计算机。您不需要在网卡或网络共享方面进行任何额外的配置。只有当您自己的机器上有服务器时,您尝试执行的命令才会执行。因此,如果您想将浏览器指向 localhost,你需要在你的机器上运行一个 Web 服务器. 如果你想执行 MySQL 命令,你的机器上需要一个mysql服务器. 如果你想执行 PHP 代码,你需要在你的机器上安装一个 PHP 解释器。协议本身并不重要,它将由客户端尝试连接的端口决定。
为了大大简化此过程,我建议您安装 WAMP(或 MAMP 或 LAMP)包。它们将 Apache、MySQL 和 PHP 安装在一个包中。在 Windows 上,Wamp 服务器是一个很好的例子。