关于编写HTTP服务器简单的问题
正在学习写一个简单的HTTP服务器。知道怎么处理静态文件,但是关于动态文件,还是有点疑问。对于动态程序,GET的话就在URI上带上参数,POST的话参数就放在headers上,服务器找到那个动态程序,带上参数运行就行了。这就是我对运行动态文件的理解。但是我不知道怎么运行用别的语言写的网站文件
比如说我用python的flask写了一个小网站,用它自身的web框架自带的服务器服务器功能可以跑在它自己的服务器上,正式部署的时候就要放到Nginx或者阿帕奇上才能让外网访问了是吧。
我的问题是怎么让这写好的python文件放到我自己写的HTTP服务器上,并能成功运行呢?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
握爪,目前同正在实现一个
HTTP Server
tinyhttpd,所谓的“动态文件”也就是CGI
程序。目前,我所做的处理是:对于一个动态请求,
fork
一个子进程,在该子进程中执行(exec
系统调用)这个动态请求对应的CGI
程序。CGI
程序可以是Bash
、Python
等等。但是我觉得fork
一个进程的代价太大,应该有更好的解决方案。欢迎交流。目前大概搞懂了我的问题,一般
HTTP Server
或者Web Server
只是负责处理request
和response
,真正处理逻辑业务的是App Server
,这样也易于扩展。至于两个Server
之间如何交互,那就是要用到一些接口
。至于
CGI
、FastCGI
、WSGI
和上面提到的php-fpm
都是对一种或多种语言的接口。自己写server的目的是什么呢?