我们可以把php,perl,python和apache集成在一起,并在其中建立站点。
在apache中使用C/C++并在其中构建网站也是可能的吗?
发布于 2011-08-02 21:37:45
它起作用了。
您可以使用CGI执行基本操作:对于对站点上某个地址的每个请求,Apache都会使用给定的可执行文件启动一个新进程。此可执行文件可以是C++。缺点是为每个请求创建一个新进程。为了获得更好的结果,您可以使用FastCGI,其中CGI进程可以针对几个不同的请求运行。
有关C++中的高级站点(请参阅Web2.0),请查看Wt。
发布于 2013-07-17 20:56:52
如果你想编写一个网站,你真的想要一个非常深的库,所有那些“其他”语言都提供了开箱即用的库。如果您使用Apache实现大部分功能,那么C++不是最好的选择。
如果你仍然喜欢冒险,并且想使用C++创建自己的自定义web服务器,可以试试boost::asio。提供了将请求解析为路径并从文件系统返回html文件的example http server。
优点:除了C或汇编语言之外,没有其他语言能与您使用C++获得的低级控制相匹配。例如,我的web服务器只处理一个非常具体的RESTful应用程序接口,而不处理其他任何东西。
缺点:你需要自己做大量的工作,而不是深度的库支持,所以要做好准备。例如,我刚刚添加了基本身份验证-我必须查找适当的HTTP,编写我自己的基本标头,并插入Base64编码来编码用户名和密码。但我喜欢这一点--我知道到底发生了什么,直到最后一个字节。
发布于 2017-05-09 18:15:49
在阅读完所有答案之后,我想到了一个使用C++而不是PHP/Python/Perl的最简单的想法。
为了进行这个参数,我将使用PHP语法和约定。
Php扩展是用C/C++编写并编译的。因此,我们不用浪费时间在前端服务器和我们的C代码之间架起一座桥梁,我们只需用C语言编写整个网站逻辑,并将其转换为PHP扩展或Python/Perl库。因为任何人都会使用C/C++而不是PHP/Python/Perl来提高速度,所以这个解决方案是一个很好的选择。
我们的PHP代码将只调用由我们的C代码公开的初始化函数,打包为一个扩展。
这不仅是另一种选择,而且还可以防止业余爱好者在将他们的C代码直接暴露给Apache时添加不需要的错误。
https://stackoverflow.com/questions/6912761
复制相似问题