好吧,我正在运行独立客户,并犯了一个愚蠢的错误,现在我需要帮助修复。
所以一个testing应用程序目录在特定的端口上运行独立的乘客,我删除了目录,以便我可以拉一个新的应用程序来代替它(并使用相同的端口)。 那么,根本不考虑乘客,我应该先阻止守护进程。 那么现在港口已经被捆绑在一起了,我不知道如何阻止它。 我发现港口开始的过程,并杀死它,但无济于事。 地址仍然绑定和不可用。
没有重新启动服务器(对我来说不是一个真正的解决scheme),我怎么能一起杀死那个nginx / passenger进程,这样我才能在那个端口启动一个新的乘客实例?
Passenger Standalone为你启动Nginx,这就是实际绑定到这个端口的东西。 由于您删除了目录,Passenger Standalone无法访问Nginx的锁定文件或PID文件,这就是为什么在杀死Passenger Standalone后无法为您杀死Nginx的原因。 你应该手动杀死Nginx。
运行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