我正在尝试从 mac 终端使用 python 设置服务器。
我导航到文件夹位置并使用:
python -m SimpleHTTPServer
但这给了我错误:
socket.error: [Errno 48] Address already in use
我之前使用相同的命令打开了一个连接 用于我机器中不同位置的不同网站。
最佳答案
您已经有一个绑定(bind)到默认端口 (8000) 的进程。如果您之前已经运行过相同的模块,则该进程很可能仍绑定(bind)到该端口。先尝试定位其他进程:
$ ps -fA | grep python
501 81651 12648 0 9:53PM ttys000 0:00.16 python -m SimpleHTTPServer
包含命令参数,因此您可以发现正在运行的 SimpleHTTPServer
如果不止一个 python
进程处于事件状态。您可能想测试 http://localhost:8000/
仍然显示本地文件的目录列表。
第二个数字是进程号;通过发送信号停止服务器:
kill 81651
这会发送一个标准 SIGTERM
信号;如果该过程没有响应,您可能不得不求助于更严格的方法,例如发送 SIGKILL
( kill -s KILL <pid>
或 kill -9 <pid>
)信号代替。见 Wikipedia for more details .
或者,通过在命令行上指定备用端口,在不同的端口上运行服务器:
$ python -m SimpleHTTPServer 8910
Serving HTTP on 0.0.0.0 port 8910 ...
然后以 http://localhost:8910
身份访问服务器;在哪里 8910
可以是 1024 及以上的任何数字,前提是该端口尚未被占用。
关于python - socket.error : [Errno 48] Address already in use,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19071512/