问题标签 [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.

0 投票
1 回答
1050 浏览

ubuntu - 快速 CGI、Lighttpd、Ubuntu

UBUNTU 用户是否熟悉此日志文件?

Lighttpd 日志文件:

如果你解决了 fcgi 问题并让 lighttpd 启动,请公开一个秘密。

谢谢,天哪。

0 投票
2 回答
1996 浏览

http - 客户端断开连接时,HTTP 代理/FastCGI/SCGI 未关闭连接 - 错误或功能?

我正在通过长 XMLHttpRequest 轮询为CppCMS框架提供Comet 支持。在许多情况下,这样的请求在服务器给出任何响应之前就被客户端关闭了——例如页面被关闭,用户移动到其他页面或者它只是被刷新。

在服务器端,我希望我会收到连接断开的通知。我通过 3 个连接器测试了应用程序:FastCGI、SCGI 和简单的 HTTP 代理。

从 3 个主要的 UNIX Web 服务器 Apache2、lighttpd 和 Nginx 中,只有最后一个按预期关闭了连接,允许我的应用程序从等待队列中删除请求——这适用于 FastCGI 和 HTTP 代理连接器。(Nginx 默认没有 scgi 模块)。

其他的,Apache 和 Lighttpd 不会关闭连接或通知后端断开客户端,继续进行,就好像客户端仍然在线一样。这适用于所有 3 个受支持的 API:FastCGI、SCGI 和 HTTP 代理。

我已经为Lighttpd打开了一个问题,但更让我担心的是 Apache——作为 lighttpd 的成熟且得到良好支持的 Web 服务器,并且没有透露客户端已经离开的服务器后端。

问题:

  1. 这是一个错误还是一个功能?是否有任何理由不关闭 Web 服务器和应用程序后端之间的连接?
  2. 是否有现实生活中的 Comet 应用程序通过 FastCGI/SCGI/HTTP-Proxy 后端在这些服务器后面工作?
  3. 如果上述情况属实,他们如何处理这个问题?我知道我可以每 10 秒超时一次所有连接,但我想让它们在客户端监听时保持空闲——因为这样可以更容易地扩大规模——每个连接都非常便宜——成本只是打开的套接字。

谢谢!

0 投票
4 回答
480 浏览

python - 以交互方式找到 Python 蛋,但在 fastcgi 中没有

同意这个问题及其答案。我添加了鸡蛋的路径,它起作用了。但是,当我以交互方式运行 python 并导入 Flup 时,它可以正常工作,也没有任何额外的路径规范。区别在哪里?

编辑:似乎在做 fastcgi 的时候,.pth 文件没有被解析,但这只是一个猜测。需要更多官方声明。

0 投票
3 回答
533 浏览

perl - 自动重新启动关闭的 FastCGI 进程的好策略是什么?

我有一个很少出现故障的基于 Perl 的 FastCGI 应用程序。但是,当它确实关闭时,重新启动不是自动的。手动重新启动 Apache 总是可以解决问题,但这确实可以提高应用程序的正常运行时间。

我正在考虑将cron作业与用于定期检查应用程序并根据需要重新启动它的脚本结合使用WWW::Mechanize,正如 Perl Monks 的人们所建议的那样:

保持 FastCGI 进程正常运行

在我这样做之前,我想知道是否有人知道更好的方法来监视 FastCGI 进程并在它死亡时自动重新启动它,或者建议的方法是否是最佳方法?

谢谢。

0 投票
2 回答
18620 浏览

php - Apache 的 mod_php 还是 FastCGI?哪个对 Wordpress 有好处?

我对在不同的配置(如 mod_php、cgi、FastCGI 等)中运行 PHP 有基本的想法。

在我的发现和测试中,我发现 FastCGI 稍好一些。我最喜欢 FastCGI 对 SuEXEC 的支持。等等,我不想再在这里涉足基准测试业务。如果您在网上冲浪,您会发现人们证明一种方式在每秒处理的请求数量方面比另一种方式更快。好吧,它的指标很好,但我对不同的因素感兴趣,这是我的问题......

  1. 哪种运行PHP的方法消耗的内存更少?
  2. 哪种方法消耗内存几乎是恒定的。我使用 mod_php 看到我的服务器内存使用量每隔几秒就会在 300MB 和 800MB 之间波动。
  3. 但是使用 FastCGI,来自服务器的第一个响应来得很晚。我看到 FastCGI 每个网页请求都有一个初始延迟。一旦服务器的第一个响应到达,图像、css、js 等其他项目的加载速度就会更快。
  4. 两者混合运行可以吗?我在专用服务器上有 5 个站点。如果我用 mod_php 运行几个并用 FastCGI 休息可以吗?
  5. 我确信我的服务器出现故障主要是因为 mod_php 的内存使用不当。我检查了所有脚本。有什么方法可以确保服务器上的内存消耗几乎保持不变?
  6. .htaccess 的复杂性是否会显着影响内存使用?如果是,是否是导致服务器内存不足的单一原因?
  7. apache MPM prefork/worker 设置会影响内存消耗吗?它们是否同样影响 mod_php 和 FastCGI 模式?
  8. 当我运行“top”命令时,我看到 apache (httpd) 消耗了大约 40MB 的内存。有许多 httpd 正在运行的实例。此外,FastCGI 还分叉了一些类似大小的进程。httpd 进程的正常内存大小是多少?
  9. 当我在我们所有的网站上运行 Wordpress 时,在这种情况下哪一个是好方法?
  10. FastCGI/SuExec 能否与 APC 一起正常工作?我是否需要重新配置 APC 才能使用 SuEXEC 和 FastCGI。

请注意,我对在 DIGG 或流量高峰中生存不太感兴趣。我想要一种可以使服务器稳定且可预测的方法。

对不起,如果我感到困惑,但我真的一团糟。我有 512MB 物理 RAM,400MB 交换,我的服务器内存快用完了。平均内存需求约为 350MB,它只是内存使用高峰使内存在几秒钟内不可用,如果在这几秒钟的窗口中收到的额外命中数很少,apache 崩溃,而 mysql 和所有其他人继续正常运行。

请帮帮我。我不会购买更多的 RAM 或硬件。我很确定问题出在我的配置中。对不起,如果我听起来傲慢或无知。

0 投票
3 回答
3028 浏览

mysql - PHP App (ExpressionEngine) 在 IIS 7、MySQL、FastCGI 上加载缓慢

我正在调试在 IIS 7 上运行 ExpressionEngine(一个 PHP 应用程序)时遇到的缓慢问题。

我不认为这实际上是 ExpressionEngine 的问题,而是我的 PHP/MySQL 设置的问题。

问题就这样表现出来了:

  1. 转到网站地址
  2. IE“旋转”10-15 秒,等待加载。在这段时间:
    • 服务器上的处理器使用率最低,PHP 的进程处于非活动状态
    • 我在 MySQL 中看到了站点用户的连接,但该线程更多地处于“睡眠”状态。
    • 服务器上有大量可用内存
    • 几乎,服务器什么也没做
  3. 10-15 秒后,我看到连接 MySQL 运行了一些非常快速的查询(非常快),并且站点在一秒钟内加载。

这是一个相当复杂的站点,但是整个系统只是坐在那里等待 10 秒 - 不处理任何东西是没有任何意义的。我在 IIS7 上使用 FastCGI,它似乎工作正常,对我来说,这似乎是某种超时问题,FastCGI、PHP 甚至 MySQL 正在等待某些东西,没有得到它,并且在超时发生之后,继续处理。

有人有类似的经历吗?

谢谢!

PS - 我还应该补充一点,数据库(MySQL)和 PHP 在同一台服务器上运行。

0 投票
3 回答
2265 浏览

c++ - 我想开始开发 CGI,但我对此很陌生

我想用 C++ 开发我的下一个 Web 项目作为 FastCGI,但我不知道如何开始,而且谷歌对此也不是很友好。我真的不太了解fastCGI或其他使cgi持久化的库......试图阅读一些东西,但它似乎与Linux一起使用所有那些.configure Makefile等......

谁能给我一个基本的教程,但有点详细?我有 windows vista sp1 和 IIS 配置为接受 CGI,我也有 Visual Studio 2008 和 DevC++。

我从 fastcgi.com 下载了该套件,但很难理解它的基础知识。使用 fastcgi(我可以使用持久代码的任何库)构建一个 hello world 的真正简单的方法会非常好。

严肃地说,基础知识就像我不知道我是否可以将fastcgi项目中的文件包含到我的项目中并一起编译,如果这适用于我的IIS。即使这样可行,我也不知道应该从 fastCGI 开发工具包中构建哪个,有一个 cgi-fcgi 和 libfcgi 文件夹,其中包含文件,并且几乎所有文件夹中都有 Makefiles -_-" ...

我知道 C++ 中的 CGI 很难开发,因为它不使用模板,而且你必须注意内存管理……但我想试一试。我有点厌倦了脚本语言及其限制/限制。

对不起我的英语,我希望我足够清楚。

谢谢,乔

0 投票
2 回答
1374 浏览

django - Lighttpd、FastCGI、Django - 如何自动重启?

我在开发机器上使用 Lighttpd + FastCGI + Django。我通过 manage.py 的命令行选项启动 FastCGI 服务器。

问题是我确实经常对源进行更改,我需要让 FastCGI 自动获取这些更改,就像“./manage.py runserver”一样。

也许有一个命令行选项,或者任何其他解决方案?

0 投票
0 回答
564 浏览

django - 在运行 FCGI 的服务器上调试 Django 应用程序

我在本地机器上开发了我的 Django 应用程序,但是当我将它上传到我的服务器(DreamHost,运行 FCGI)时,我遇到了一些问题。

如何在运行 FCGI 的 DreamHost 服务器上调试 Django?

0 投票
1 回答
304 浏览

cgi - 输出 gif 图像和其他非 HTML 内容的 CGI 程序

我正在编写一个 CGI 程序(在 C++ 中),它将在其响应中输出以下数据:

  1. (内联)GIF 图像(即八进制流)
  2. JSON
  3. Javascript
  4. XHTML

我见过的所有 CGI 示例都是“微不足道的”并且只返回一种数据类型。如何返回包含上述所有内容的响应?