2

它显然不会引起任何问题,但我想知道,为什么我的 apache 会像我改变主意一样改变他的端口。^^

当我启动控制面板并启动 apache 时,它​​从标准端口 80,443 开始,但是当我在 localhost 上进行一些调用时,端口会发生变化。目前是 64,49616,49855。

这是一种批判性行为还是正常行为?;o)

4

1 回答 1

4

Apache 在运行时不应更改端口。当它启动时,它会尝试绑定到其配置的端口(在本例中为 80 和 443)。通常这可能是一个问题,尤其是在端口 < 1024 受限的 Linux/Mac 环境中(只有 root/admin 进程可以绑定到这些端口),这就是默认 XAMPP Apache 端口通常是 8080 和 8443 的原因。

请注意,每当浏览器连接到给定的远程主机:端口(即使该主机是 127.0.0.1 aka localhost)时,它都必须为 TCP 连接创建一个本地端口,该端口(通常)是从用户中随机选择的 -空间集(范围 1024-65535)。如果您只是“netstat -n”您的连接,您会发现本地 127.0.0.1:45678 连接到远程 127.0.0.1:80(如果 45678 是随机分配的本地端口)。请注意,本地端口在每个连接上都会发生变化(每次页面刷新,除非 KeepAlive 处于打开状态),这无关紧要。另请注意,连接的目的地称为“远程”,即使它是 localhost/127.0.0.1 环回地址。

于 2013-04-19T14:44:56.743 回答