FastCGI Get方法实例
2023-10-24 07:40
浏览:439次
简介
书接上文:[在 1024Code 上通过Nginx配置C++的CGI程序实例](),我们了解了如何安装和配置 Nginx Web 服务器,并成功跑起了CGI 的 demo 程序。 这里,我们在其基础上,使用 FastCGI 来实现一个 Get 方法实例(实例来源于 [菜鸟教程:简单的 URL 实例:Get 方法](https://www.runoob.com/cplusplus/cpp-web-programming.html) ): 1、首先需要下载 cgicc 库,实现这个实例需要用到这个库 ``` $ wget https://ftp.gnu.org/gnu/cgicc/cgicc-3.2.19.tar.gz $ tar xzf cgicc-3.2.19.tar.gz ``` 2、编译和安装 cgicc ``` $ cd cgicc-X.X.X/ $ ./configure --prefix=/usr $ make ``` 因为代码空间容器环境的用户为 runner(非 root 用户),我们没有写入 /usr/lib 目录的权限,所以 make install 时,我们需要指定安装这个库到其他路径: ``` $ make install DESTDIR=/home/runner/app ``` 3、配置 linux 动态库环境变量( [LD_LIBRARY_PATH](https://baike.baidu.com/item/LD_LIBRARY_PATH/9391538?fr=aladdin) )指定查找共享库(动态链接库)时除了默认路径之外的其他路径。 ``` { pkgs ? import <nixpkgs> {} }: pkgs.mkShell { shellHook = '' alias ll="ls -l" export LD_LIBRARY_PATH=/home/runner/app/usr/lib ... ``` 修改 .1024nix 文件,在文件中添加 export LD_LIBRARY_PATH=/home/runner/app/usr/lib,并执行 nix-shell .1024nix 完成动态库环境变量配置。 4、创建 cpp_get.cpp 文件,并实现程序方法 5、编译 cpp_get.cpp ``` g++ -o /home/runner/app/nginx/html/cpp_get.cgi cpp_get.cpp -L/home/runner/app/usr/lib -I/home/runner/app/usr/include -lcgicc ``` 其中: - -L 将所要链接的库文件所在的路径告诉gcc - -I 指定第三方库头文件的位置 - -l 指定需要链接的库 6、将编译命令配置到运行按钮,点击运行按钮运行 7、在浏览器窗口地址栏中添加尾缀 /cpp_get.cgi?first_name=ZARA&last_name=ALI 测试实例结果 ![运行并测试实例结果](https://1024-staging-1258723534.cos.ap-guangzhou.myqcloud.com/doc_assets/Cases/runfastcgiget.gif) --- 下方嵌入的IDE运行起来后,可在浏览器窗口里点击新标签页打开,在打开的新标签页的URL地址栏中添加上述尾缀测试实例运行结果。
一起来交流一下吧~
评论加载中...
Copyright © 2022-2024 1024Code 粤ICP备19030132号-9