问题标签 [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 投票
5 回答
1035 浏览

perl - 如何编写支持 CGI、FastCGI 和 mod_perl 的 Perl Web 应用程序?

如何在 Perl 中编写 Web 应用程序,以便它可以作为普通 CGI 脚本、FastCGI / FCGI 脚本和来自mod_perl/ mod_perl2(最​​好只使用核心 Perl 模块和来自 libwww-Perl 的模块,并尽量减少 Perl CPAN 模块的数量)必须安装)?我想尽量减少将脚本从使用 CGI 更改为使用 FastCGI 或 mod_perl 的更改。

进一步的限制:如果可能的话,我想将 Web 应用程序保存在单个文件中,而不是像目前那样将其拆分为模块。

有问题的 Web 应用程序是 gitweb,Git Web 界面,如果重要的话。

0 投票
2 回答
2155 浏览

perl - 为什么我的 Perl 脚本不能在 FastCGI 下启动?

我在error_log我的一个 Perl CGI 应用程序中收到此错误。我很确定我根本没有更改我的脚本,突然间我开始收到这个错误。

这是我看到的error_log

(为清楚起见,对片段进行了编辑)

此外,AddHandler配置文件中存在 FastCGI 行。

谁能告诉我这个错误的可能原因?Apache 日志中没有任何记录。

0 投票
2 回答
1689 浏览

django - 使用 Django 和 FastCGI 的 lighttpd mod_rewrite 与 apache mod_rewrite

我正在从 Apache 中的 Django FastCgi 设置迁移到 lighttpd 中的设置。

在 Apache 上,我使用的是 Django 文档中描述的 fcgi 配置。核心部分是将我所有的非静态 URL 重写为 /mysite.fcgi/$1:

然后为 FastCGI 转发 /mysite.fcgi 的所有请求:

该设置适用于 Django。例如,如果我去http://www.mydomain.com/help/并在模板中打印{{ request.get_full_path }},结果是/help/. 生活很好,我很开心。但是,我遇到了一些问题,这些问题迫使我转移到支持比 Apache 给我更多的同时连接的 Web 服务器。

快进到 lighttpd。一切都已配置好。我正在用 mod_rewrite 重写我的 URL:

url.rewrite-once = ( "^(/media/.)$ " => "$1", "^/favicon.ico$" => "/med/img/favicon/favicon.ico", "^(/ . )$" => "/mysite.fcgi$1", )

并让 FastCGI 处理 /mysite.fcgi:

一切正常,我的 Django 网站运行良好。但是当我去模板中http://www.mydomain.com/help/打印{{ request.get_full_path }}时,结果是/mysite.fcgi/help/. 这会导致一些问题。

虽然这通常不会导致问题,因为 Django 站点运行良好,但在我使用 SSL 时确实会导致问题。具体来说,我使用来自http://www.djangosnippets.org/snippets/240/的“Stephen Zabel - sjzabel@gmail.com”的 sslmiddleware 。该软件依赖于 request.get_full_path,它在 lighttpd 下返回的值与在 Apache 下不同。request.path 相同。

任何人都可以提出解决这个问题的方法吗?理想情况下,我希望 lighttpd mod_rewrite 在 Apache 下具有与 mod_rewrite 相同的行为。如果不可能,我想要一个与我正在使用的 sslmiddleware 包兼容的 lighttpd FastCGI Django 设置。或者,我可以将 sslmiddleware 包更改为与 lighttpd 中的 mod_rewrite 重写 URL 的方式兼容。

这个答案将成为一份很棒的 30 岁生日礼物!

0 投票
1 回答
7032 浏览

php - fastcgi 不起作用 - 下载的包装器未运行

在我新的 Ubuntu 8.04 上

我安装了虚拟机。然后我像在其他服务器(Debian)上一样设置了 fastcgi。但是我有一个小问题。当我打开网站而不是运行 fastcgi 包装器时,它会下载它。这是配置:

网站.conf:

/home/przepisy/php-fastcgi/php5-fcgi

因此,如果我访问网站,它会给它一个随机名称,当我查看下载的内容时,它会显示 php5-fcgi 内容。当我指定 php 脚本(例如 index.php)时,它会选择保存并显示 php5-fcgi 的内容......我不知道在这个阶段。这个配置在 Debian 上运行没问题...

0 投票
2 回答
874 浏览

cgi - 了解 Rails 中的 CGI / FastCGI

这更多是为了理解 web 应用程序中的请求-响应机制。客户端向 Web 应用程序发送请求 (GET / POST)。Web 应用程序有一个正在运行的应用程序服务器,该服务器用作应用程序特定程序的容器。我不明白应用服务器启动 FastCGI / CGI 进程时的部分。CGI的意义是什么?服务器不是设计来处理完整的请求处理机制吗?请求处理的哪一部分依赖于 CGI?

0 投票
2 回答
548 浏览

windows - 在 VB6 中为 FastCGI 编写代码?

当我在这里忙于阅读FastCGI文档(是的,阅读“友好”手册)时,有人知道是否有人在 VB6 中编写过 FastCGI 应用程序吗?

在 Coast Research and Development 的用于 Windows Web 服务器的 FastCGI Dll 库(带有 SIGTERM 处理程序)开始接近自己找到解决方案

0 投票
5 回答
1502 浏览

php - 我可以配置环境特定的内容吗?

与您可以根据浏览器类型生成特定内容的方式相同,有没有一种方法可以根据运行 PHP 的服务器生成特定内容,而无需参考服务器或站点名称?

例如,一种让 PHP 自动检测其所处环境并配置数据库连接、ini_set 错误等内容的方法,具体取决于它是开发环境、ITS、UAT 还是生产环境。

我想到的两种方法是识别指示开发和 QA 环境的 HTTP 标头或在 php.ini 中具有自定义属性。

我稍微醒来,发现了读取 http 标头的 php 函数,但是 php 覆盖了我在 Web 服务器中设置的任何内容,我不知道它们是否可以在 php.ini 中设置。

我不知道是否可以向 php.ini 添加自定义值,但是我进行了测试,但 ini_get 找不到它(当然,我在更改 php.ini 后重新启动了 Web 服务器)。

0 投票
1 回答
406 浏览

php - php-cgi.exe - 它是否检测并处理 CGI 和 FastCGI?如果是这样,怎么做?

我从微软关于FastCGI 和 PHP的讨论以及Coast R&D 的网站中得到的印象是 php-cgi.exe 能够检测它是在 CGI 还是 FastCGI 上下文中使用。如果是这样,它是如何做到的,因为我想在我自己的产品中具有类似的功能。

0 投票
2 回答
42451 浏览

php - Apache 与 IIS PHP 性能比较

有谁知道 IIS 与 Apache 用于 PHP 托管的实际性能比较的任何链接?

我希望利用现有基础架构将技术从 .NET 更改为 PHP 应用程序,但我找不到有关托管在不同平台上的 PHP 的任何信息。一般来说,关于 IIS 与 Apache,或 ASP.NET 与 PHP .. 或任何其他语言服务器与服务器、语言与语言,但没有服务器/语言与服务器/语言,有很多问题。

我目前的方向是使用 PHP 和 FastCGI .. 看起来很不错。只需要证明它的合理性或找到一个令人信服的理由来拒绝我习惯的那个可爱的大 MS 怪物。

更新

Windows 环境是 Win2k3,运行 IIS6,FastCGI 为 PHP 扩展提供服务。还计划使用 eAccelerator 或类似的脚本缓存。

0 投票
2 回答
12877 浏览

sockets - 端口上的 FastCGI 与套接字上的 FastCGI

我今天在 Cherokee 上设置 Django(使用 SCGI),我注意到Django 文档说您可以使用主机/端口组合或套接字在网络服务器和 Django 之间进行通信。

他们在这件事上唯一要说的就是

你选择的是一种偏好方式;由于权限问题,TCP 套接字通常更容易。

(顺便说一句,我在使用套接字时遇到了权限问题,但在使用主机时却没有:)。)

我隐约记得我的系统编程课上的套接字是如何工作的,但我真的很好奇两者之间的有效区别是什么。任何时候有选择的东西,都会有人对这件事有意见,所以我希望能得到那个。特别是,是否有任何性能差异?

或者,如果它真的无关紧要,我只是想要一些确认,所以我可以继续我的编程并忽略这些系统管理员的东西。