Php Can';t将端口80或443用于XAMPP上的WebSocket
我有一个Windows7XAMPP设置,用于快速测试PHP代码。我一直在使用我最近编写的PHP WebSocket脚本运行测试,除了端口80和443之外,它在我测试过的每个端口上都可以正常工作。80和443都不能使用Php Can';t将端口80或443用于XAMPP上的WebSocket,php,websocket,port,rfc6455,Php,Websocket,Port,Rfc6455,我有一个Windows7XAMPP设置,用于快速测试PHP代码。我一直在使用我最近编写的PHP WebSocket脚本运行测试,除了端口80和443之外,它在我测试过的每个端口上都可以正常工作。80和443都不能使用ws或wss协议。当我尝试任何一个端口时,绝对不会有任何结果,脚本将永远运行在那里 各国: WebSocket协议试图解决现有协议的目标 现有HTTP上下文中的双向HTTP技术 基础设施因此,它被设计为在HTTP端口80和80上工作 443 以及: 默认情况下,WebSocket协议
ws
或wss
协议。当我尝试任何一个端口时,绝对不会有任何结果,脚本将永远运行在那里
各国:
WebSocket协议试图解决现有协议的目标
现有HTTP上下文中的双向HTTP技术
基础设施因此,它被设计为在HTTP端口80和80上工作
443
以及:
默认情况下,WebSocket协议将端口80用于常规WebSocket
用于WebSocket连接的连接和端口443通过隧道传输
传输层安全性(TLS)[RFC2818]
以及:
端口组件是可选的;“ws”的默认值是端口80,而
“wss”的默认值是端口443
那么我应该如何让端口80和443正常工作呢?谢谢
Edit:这是
netstat
的第一行:
我想这意味着我不能使用端口80,对吗?通常,这种问题会导致以下情况之一:
netstat
查看您有哪些端口的侦听器:
netstat -a -p TCP -o -n
如果这是第二个问题,您可能必须调整运行服务器的方式,使其具有适当的权限
在Windows下启用端口共享可能有一个变通方法(我没有尝试过):
…但这种设置可能很难预测其行为。另一种选择是在IIS中设置代理(我认为这是占用您80端口的原因)。此答案上次修订是在2015年11月20日美国东部时间下午2点 我发现了您的问题,因为它与我在Windows 10笔记本电脑上安装和配置XAMPP的设置过程类似 (我将在下面详细解释我的具体情况,但在此之前,我将对您的问题给出一个非常快速的总结答案。) 我以管理员身份运行XAMPP,方法是右键单击它并选择该选项。 港口问题似乎消失了。 现在,我可以通过在任务栏上的固定图标中单击鼠标左键来正常打开它,而无需指定管理员。 后一种结果是在24小时内多次重新启动计算机后出现的。 但愿我能确切地知道是什么改变了以及它是如何工作的,但就我所知,它现在工作得很好。 2015年11月17日,我在XAMPP控制面板中收到一些错误。 这些错误与以下内容类似: “无法打开进程PID 4416” “端口80已被阻止” “端口443被阻止” “您不是以管理员身份运行” 另外,我应该提到的是,我正在完成罗宾·尼克松(Robin Nixon)出版的第四版教材《学习PHP、MySQL和JavaScript与jQuery、CSS和HTML5》中第2章“设置开发服务器”中的步骤 我还发现一个命令提示符“looking”框打开了,我不知道该怎么办,所以我后来关闭了它 然而,为了回到正题,特别是对我来说,设置服务器并以尽可能类似于教科书说明的方式运行它非常重要,因此更改默认端口号对我来说似乎不是一个好的选择,因为我不确定如何更改端口号,例如主端口,可能会影响其他端口以及线路上的其他内容 我还被其他一些建议弄糊涂了,这些建议是关于使用各种方法进行搜索,以确定还有哪些“事情”可能会中断我的XAMMP尝试使用的端口,即我的Apache服务器 实际上,似乎Apache是PID 4416的源代码,根本没有任何东西在使用端口80或端口443。我还检查了端口3306是否被使用,因为教科书中提到它将是MySQL的默认端口,其他任何东西都没有使用它 我通过转到“任务管理器”,然后转到“详细信息”,再转到“PID”来检查这些PID 然后,在我的Windows10笔记本电脑中,我关闭了所有打开的任何窗口,甚至是XAMMP控制面板 然后,我在“搜索窗口”栏中键入XAMMP 当XAMMP出现时,我右键单击它并选择以管理员身份运行它 当用这种方法打开控制面板时,我在XAMMP的控制面板中没有收到任何错误消息 然而,当我将XAMMP固定到任务栏并尝试以正常方式打开它(左键单击打开)时,我收到了许多错误 但是,当我右键单击任务栏上固定的XAMMP图标,然后在弹出单词XAMMP时再次右键单击,然后选择“以管理员身份运行”时,似乎没有错误 这是一种变通解决方案 我想这可能对一些人有帮助,但不是所有人 我希望这有助于阐明类似的问题 我将努力彻底解决这个问题 在这种特殊情况下,我似乎需要找到一种方法来确保XAMMP在打开时自动作为管理员运行,并且需要一些我还没有发现的调整 我希望这对其他人有帮助!:) 我的大部分知识都是基于HTML5和CSS3以及搜索引擎优化,所以我现在正在努力学习更多关于服务器端和动态/交互式脚本的知识 p.S.首次出现问题后24小时内