好吧,我正在独立运行乘客,并犯了一个愚蠢的错误,现在我需要帮助修复。
因此,测试应用程序目录在特定端口上运行独立乘客,我删除了目录,以便我可以用一个新的应用程序代替它(并使用相同的端口)。好吧,根本不考虑乘客,我应该先停止守护进程。好吧,现在港口被捆绑在某个地方,我无法弄清楚我的生活如何阻止它。我找到了端口启动的过程,并将其杀死,但无济于事。地址仍然是绑定的,无法使用。
如果没有重新启动服务器(对我来说真的不是一个可行的解决方案),我怎么能一起杀死那个nginx / passenger进程,以便我可以在该端口上启动一个新的乘客实例?
答案 0 :(得分:2)
运行lsof -i :portnumber
,例如lsof -i :3000
你会得到这样的东西......
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
Passenger 10514 USERNAME 5u IPv4 0xea95336b89bfa931 0t0 TCP *:hbci (LISTEN)
Passenger 10515 USERNAME 5u IPv4 0xea95336b89bfa931 0t0 TCP *:hbci (LISTEN)
使用kill PID
...... kill 10514
答案 1 :(得分:0)
Passenger Standalone为您启动Nginx,这就是实际绑定到端口的内容。因为您删除了目录,所以Passenger Standalone无法访问Nginx的锁定文件或PID文件,这就是为什么在杀死Passenger Standalone时它无法为您杀死Nginx。你应该手动杀死Nginx。