问题标签 [fastcgi++]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c++ - 如何从 fastcgi++ 获取行 POST 请求数据
如何使用 Fastcgi++ 库从客户端获取 Row POST 请求数据并将其显示在网页上。
我试过下面的例子
但我想查看 ROW Post 数据不是以 std::map 的形式,而是以 std::string 的形式。
c++ - libfastcgipp < 加载共享库时出错
对 c++ 来说很新,不过用其他语言编码了几年。我整天都被这个问题困扰着,我似乎无法弄清楚。
当我运行此处发布的代码时:http ://www.nongnu.org/fastcgipp/doc/2.1/a00004.html 我收到以下错误消息:
加载共享库时出错:libfastcgipp.so.2:无法打开共享对象文件:没有这样的文件或目录
使用ubuntu 13.10
我可以毫无问题地构建代码,但不能运行它。有一个libfastcgipp.so.2
和libfastcgipp.so
在/usr/local/lib/
我尝试从/usr/lib/libfastcgipp.so
编辑
ldd 命令的结果...
c++ - fastcgipp < 没有输出 utf8 字符
编辑
我通过键入解决了这里的问题out << L"Swedish: å ä ö Å Ä Ö"
,即字符串之前的前缀 L,在这个答案中解释:C++ 中的 L 前缀到底是什么?
我现在的问题是,这是否是一个好的解决方案,或者是否有解决此问题的首选替代方案?
编码
以下来自http://www.nongnu.org/fastcgipp/doc/2.1/a00004.html的编辑方法:
原始输出
浏览器交互
如上所示,最后一个瑞典行具有输出“å ä ö Å Ä Ö”的预期行为。然而,由于某种原因,这被替换为空格。必须有一种方法可以让我不必输入该字母的 unicode 十六进制表示。
经过一些谷歌研究后,我尝试setLocale
在主脚本的开头添加但没有成功。
为什么会这样?
在以上述方式编码时,如何解决能够自由使用任何 utf8 字符的问题?
c++ - FastCGI C++ / Nginx 和 C++ 应用程序之间的 IPC
我正在尝试创建一个网关,它提供一个 RESTful 接口来向通过蓝牙低功耗 (BLE) 通信的设备发送/接收消息。基本上它将 GATT 转换为 HTTP,反之亦然。
基本架构如下所示:
BLE Dongle 连接到 Linux 计算机(fe Raspberry Pi),C 程序打开到 BLE Dongle 的串行连接以发送/接收/处理消息。它使用 TCP/IP 套接字通过 IPC 接收来自 C++ 应用程序的请求,并使用此套接字将来自 BLE 设备(fe 传感器)的回复转发到 C++ 应用程序(充当每个连接的 BLE 加密狗的多线程服务器)。
C++ 应用程序保存此信息(发现的设备、连接的设备及其数据)并实现一个接口来控制基本的蓝牙低功耗功能,如发现、连接等。
客户端可以将 HTTP 请求 (GET/POST) 发送到使用 FastCGI 的 Nginx Web 服务器。我想解析这个 FastCGI 应用程序中的请求,然后与 C++ 应用程序通信以执行命令
fe 客户端打开一个 URI xyz/discover 发送一个 GET 请求。FastCGI 应用程序解析此请求并调用 C++ 应用程序的 Discover 函数以启动蓝牙低功耗发现。
我的问题是如何在 C++ 应用程序和 FastCGI C++ 应用程序之间进行最佳通信。
我的想法:
- C++ 应用程序派生了一个执行 fcgi-spawn 的新子程序(我的 fcgi 应用程序的路径作为参数)。然后创建两个管道用于父子之间的全双工通信
- 在两个进程之间使用命名管道
- 将 FastCGI 功能集成到我的 C++ 应用程序中是个好主意吗?C++ 应用程序运行多个线程:一个接受新的 TCP 连接,以防连接了新的加密狗。它为每个新的 Dongle 启动一个线程。我可以创建另一个负责解析 FastCGI 请求的线程吗?
因为我从来没有真正使用过 FastCGI 和 nginx,所以我只是边学边学。因此,我将不胜感激。谢谢!
nginx - Nginx + FastGgi++
我是 Web 开发的新手,我需要知道如何配置Nginx
服务器以使用它FastCgi++
?
我尝试使用这个示例,但我不明白我需要编译FastCgi++
什么,创建FastCgi++
进程需要什么,我需要传入什么Nginx
等等。
请帮我找到一些分步说明/教程来解决我的问题。
c - 实现 FastCGI++ 库的守护程序的正确 Lighttpd 配置是什么?
(也发布到 FastCGI++-users 邮件列表,但是它在很长一段时间内都没有活动)
我目前正在尝试在我正在编写的应用程序中使用 FastCGI++(2.1 版)库。该应用程序将作为 linux 机器上的守护进程运行,并通过 lighttpd 提供状态网页。我打算使用 FastCGI++ 接口定期自动更新状态网页。
我已经开始向我的应用程序添加一个线程,该线程创建一个 FastCGI++ 管理器的实例,并回显一个字符串文字以响应任何请求(与 Hello World 示例基本相同)。
但是,我似乎无法在浏览器中访问它,并且我怀疑我错误地配置了 lighttpd fastcgi 模块(/etc/lighttpd/lighttpd.conf 包含在下面)。lighttpd 错误日志记录了“unix 上没有这样的文件或目录:/tmp/Myapp.sock”。
将 lighttpd 配置为与实现 fastcgi++ 库的守护进程接口的正确方法是什么?是否有必要使用 spawn-fcgi 启动守护进程?
谢谢,
麦克风
猫 /etc/lighttpd/lighttpd.conf:
apache - Apache 不执行 .fcg 文件
我使用fastcgipp制作了最基本的fastcgi程序。我把它复制到/var/www/cgi-bin
. 然后我去了/etc/httpd/conf/httpd.conf
。
我更换了:
有了这个:
但是当我转到 时localhost/cgi-bin/index.fcg
,浏览器提示我下载 fcg 文件而不是执行它。
我正在使用 Fedora 29。
编辑:这是 httpd.conf
编辑:我以某种方式让 apache 执行脚本。但是现在,服务器给了我一个 500 内部错误。因此,我检查了 error_log 文件。它说:
我检查了我的代码。我已经输出了标题。这是 main.cpp 文件:
c++ - 我可以在控制台应用程序中连接到数据库,但不能在该应用程序的 fastcgi 版本中连接
我正在制作一个将客户信息存储在数据库中的程序。我正在使用 mariadb 的 c++ 客户端mariadbpp。因为我是网络世界的新手,所以我首先制作了一个可以运行的控制台应用程序。然后我尝试制作该应用程序的 fastcgi 版本。
这是代码:
有一个奇怪的问题。在当前情况下(插入注释掉),它可以正常输出 null,因为它从未分配过 nlohnamnn::json (默认为 null)。如果我取消注释该插入,我会收到 500 内部服务器错误。这是错误日志:
有趣的是我正在使用密码。
我已禁用从网络访问数据库。我相信这是因为 Mariadb 将 localhost 计为禁用的远程请求。
PS:我知道通过 GET 传递密码不是一个好主意。我应该使用邮政。我会改变它。
apache - 在 curl 中传递 POST 数据时请求实体太大
我有一个 fastcgi++ 服务。它通过 POST 接受 4 个参数,因为其中一个是密码。我的示例输入是 61 个字符。这就是我调用我的服务的方式:
我收到此错误:413 Request Entity too large。根据我的研究,我发现这意味着 apache 期望的身体比它得到的要小。所以,我添加LimitRequestBody 0
到httpd.conf(我不在生产环境中)。但是apache还是抱怨请求实体太大。
我将 -v 添加到 curl 中,这是输出:
这是我的 httpd.conf:
这是 fcgid.conf: