重新启动Poco HTTP服务器
Restart Poco HTTP Server
我已经使用Poco库实现了一个HTTP服务器。它运行REST服务,一切正常。
HTTP服务器在Linux系统上作为守护进程运行。
现在,我想在REST服务中实现一个功能,该功能可以重新启动HTTP服务器守护进程本身。
我使用popen
调用shell命令来重新启动守护进程。守护进程重新启动,我可以通过netstat -plten
和ps -aux
看到服务器获得了一个新的pid,并且正在侦听端口80但它不处理任何传入的HTTP请求。
如果我直接在终端中键入shell命令,守护进程将重新启动,获得一个新的pid并处理传入的HTTP请求。
可能出了什么问题?
编辑
我也尝试过用system(command);
和std::thread(std::system,command).detach();
调用shell命令,但结果是一样的。
我找到了一个解决方案。
在创建Poco::Net::HTTPServer
时,我会创建一个Poco::Net::ServerSocket
。在重新启动守护进程之前,我需要关闭那个套接字。
相关文章:
- 如何在C++中使用带有SFML的http reqest从节点.js服务器获取数据?
- 在 MySQL 中运行 HTTP 服务器以从客户端接收数据
- boost beast websocket服务器也接受http连接
- 我不明白异步操作如何使HTTP服务器并发
- 将文件发送到 HTTP 服务器 (C++ Wininet)
- 从主机向在VirtualBox linux机器上运行的服务器发送http请求
- 浏览器将随机HTTP消息正文发送到我的boost.asio服务器.我可以更改此设置吗?
- boost::asio http 服务器无法向 Postman 返回有效响应
- 如果C/C Python3扩展托管HTTP服务器并将Python代码称为请求处理程序,则如何处理并发
- 有没有人知道如何终止ESP8266 http Web服务器/接入点
- 为什么这C++ASIO,当执行HTTP / SSL请求时,BEAST服务器会进入错误状态
- QT-简单的HTTP服务器
- Apache HTTP服务器 - 如何在模块上打印到控制台
- web服务器如何知道何时完全接收到HTTP请求
- 使用C HTTP请求将文件上传到服务器
- Windows HTTP服务器API HTTPS服务器
- 在多线程HTTP服务器中发送后,如何干净地关闭套接字
- Boost Asio 示例 HTTP 服务器 -- 以这个例子为例,让它变得"production ready"
- AJAX与C HTTP服务器断开连接
- 使用带有gsoap代理类的gsoap独立服务器实现http-get