xampp 服务器(如何启动和运行)

Posted

技术标签:

【中文标题】xampp 服务器(如何启动和运行)【英文标题】:xampp server (How to get up and running) 【发布时间】:2010-11-29 00:46:38 【问题描述】:

我已经用 xampp 在一个小型 ubuntu 上网本上本地开发了大约 7 个月。两周前,我得到了一台我想用作服务器的计算机。我已经安装了最新的 Ubuntu 发行版和 xampp,将所有文件移过来,并转发了端口 80。我还从 dyndns.com 获得了一个域名,该域名正在由运行在我的路由器中的客户端更新(Netgear WGR6154 v8)。

现在,当我尝试通过输入从 dyndns.com 获得的地址来访问我的服务器时,浏览器会加载直到超时。我可以使用 localhost 作为地址在本地访问所有内容,所以我相信 xampp 正在运行,只是无法连接到互联网。

为了能够在互联网上查看我的文件,接下来我应该怎么做?

在此先感谢大家...

[我开始为第一个帮助我成功在线获取文件的人提供赏金]

【问题讨论】:

我认为这不仅仅是获得一个域名。您的 ISP 对这一切有何看法? ...但实际上,我要提到 XAMPP 带有一个警告,它对于“生产服务器”来说不够安全。您是否阅读过 XAMPP 网页的“安全问题”部分? 是的。就是用来玩的。我目前没有尝试托管“生产服务器”,只是为了与朋友一起玩和分享 但是会暴露在网上吗?嗯,祝你好运,小心点。 另外,一般性问题:我的印象是使用 dyndns.com 之类的服务代替了静态 IP 地址,并且静态 IP 通常要从您的 isp 处支付额外费用。这是不正确的吗? dyndns 的假设只有 1/2 正确,dyndns 给你一个免费的“子域名”。您可以选择将其与动态或静态 IP 一起使用。如果本地 IP 确实发生变化,现在很多路由器都有配置更新 dyndns。 【参考方案1】:

您在这里遇到了一系列问题,这是一个问题。每个问题本身都很复杂。以下是我建议您确定的建议。

首先验证您是否可以从您的服务器上网。这将确认您有一个工作的以太网接口。

第 1 步确保 XAMPP 和您的文件可以从您的家庭网络中查看。我假设您正在为您的网络使用类似 192.168.1.X 的东西,也许您的服务器是 192.168.1.10

转到您家中的另一台计算机并输入http://192.168.1.10/,看看您是否可以看到您的文件。如果可以,那么您知道服务器已正确配置并且 XAMPP 正在工作。

然后在您的主机文件中添加一个条目,以将 yourdnsrecord.com(或任何您的 dyndns 记录)解析为您的私有 IP 地址。然后,当您在该计算机上的浏览器中键入 yourdnsrecord.com 时,您仍然应该获得您的文件。这将排除您的服务器未正确配置为侦听该域名。

接下来需要测试看看是否有防火墙问题。为了简化这一点,首先从等式中删除您的家庭路由器。相反,将您的新服务器直接放在您的互联网连接上。 (假设你可以)。这样,您无需正确配置 NAT 或防火墙。您的 dyndns 名称应映射到公共 IP,然后您的服务器应具有该 IP 并直接连接到 Internet。如果您的服务器直接连接,并且根提示符下的命令 ifconfig 返回您的动态 dns 记录指向的相同公共 IP 地址,那么它应该可以工作。

如果您有一部 iphone 或其他方式来测试您的网络在 Internet 上的显示情况,这将使您的生活更轻松。

如果 ifconfig 显示的公共 IP 与 dyndns 帐户中的 IP 记录不同,则您的动态 dns 更新脚本已损坏。手动设置IP,看看能不能用。

这很可能不起作用。一些 ISP 防火墙端口 80 阻止其订户托管服务器。将服务器直接连接到 Internet 后,您可以使用公共 IP 地址对此进行测试(即使您的 dns 不工作)。以 root 身份在命令提示符下键入 ifconfig 以获取您的公共 IP 地址。然后输入命令 tcpdump -i eth?根提示符下的端口 80。伦理?需要与您在 ifconfig 命令中看到的具有公共 IP 地址的接口相同。通常这是 eth0 但它可能是 wire0 或类似的东西。

此命令将向您显示通过端口 80 到您服务器的所有流量。

从 iphone(或您拥有的任何第二个 Internet 连接)浏览到您从 ifconfig 命令获得的 IP 地址。如果您在服务器上看到某些东西(并且它直接连接到您的 ISP),那么您的 ISP 没有为您设置防火墙。

如果您可以访问您的服务器,当它通过 IP 地址或 DynDNS 地址直接连接到 Internet 时,那么您的 ISP 没有问题,是时候调试您的防火墙了。

要为您的防火墙配置 NAT,需要做两件事,其中您的路由器从您的 ISP 获得的公共地址被转换为您的专用网络,以及一个允许该流量的防火墙规则。如果你走到这一步,那么你就知道你的防火墙是问题所在,然后只需正确配置即可。这里有很多家用路由器要记录,但您通常可以从制造商网站上找到有关路由器执行此任务的操作说明(通常是手册的一部分)

如果您完全按照这些说明进行操作,您的系统将会正常工作。在流程上制作 cmets,我很乐意对其进行修改以使其更清晰。

HTH, -FT

【讨论】:

哇,谢谢 ftrotter!回到家后,我迫不及待地想尝试所有这些步骤。我会在完成这些步骤时发布结果。再次感谢... 当尝试从同一网络上的计算机访问192.168.1.* 时,URL 更改为 localhost/musicneverstopped/index.php,这是我尝试访问的文件的位置,但浏览器显示“连接失败:Firefox 无法在 localhost 建立与服务器的连接。” 还有另一件事,家里唯一的另一台电脑也在运行 xampp。当我关闭 xampp 时(在我试图访问服务器的计算机上,“其他”计算机)我收到上面的消息。如果我在“其他”计算机上启动 xampp,然后在其浏览器中输入服务器的地址,它会拉出它自己的 localhost 页面(恰好是同一页面,因为我在“其他”计算机上开发了站点然后将其移至服务器) 在我的路由器中关闭了 NAT 过滤。这似乎有助于转发端口 80,因为 canyouseeme.org 报告它已关闭,现在它已打开...... 好的!!!它与文件夹权限或其他东西有关。当我在 /opt/lampp/htdocs 中编辑 index.html 时,当我将服务器地址输入“其他”计算机的浏览器时,我可以看到更改,但我无法在 htdocs 之外重定向...【参考方案2】:

您应该确保您的 xampp 不只监听 localhost。

为此,请编辑您的 apache 配置文件并检查并搜索 Listen 指令

您也应该能够通过分析netstat -a 的输出来知道。

然后确保您的路由器正确转发,使用tcpdump 会有所帮助。

如果您需要更多帮助,请给我留言。

干杯

【讨论】:

tcpdump 返回:tcpdump:找不到合适的设备 刚刚检查了您的 netstat 服务器正在侦听每个 ip,所以没问题....确保您的转发正常。你的 ifconfig 的输出是什么? 感谢您的检查。我已经离开服务器,要去睡觉了,但我会在早上回来报告...... netstat -a 输出的第 16 行会显示问题吗? tcp 0 0 localhost:48560 localhost:www TIME_WAIT “TIME_WAIT”是我很好奇的... 在一根树枝掉下来拔掉了我的电缆后,终于再次在服务器上工作了。还有其他想法吗?

以上是关于xampp 服务器(如何启动和运行)的主要内容,如果未能解决你的问题,请参考以下文章

无法正确启动 XAMPP

xampp apache服务器启动并运行,但请求错误

xampp怎么启动apache服务

Debian7上启动Apache的XAMPP失败了

WAMP / Xampp Apache 服务器未启动

如何在xampp中运行php文件