问题标签 [mod-fcgid]
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.
apache - 配置 trac 以使用 Apache2 时遇到问题
我一直在尝试将 trac 设置为与 apache 一起部署一段时间,但我正在碰壁。
我可以通过 tracd 让它工作,但我可能会有多个项目,我可能想使用 TSL 连接到 trac。
这是我从服务器收到的响应
这是我的 apache v-host 文件:(已删除评论)
这是我服务器的错误日志:
有谁知道可能发生了什么以及我应该做些什么来解决它?谢谢!
apache - 通过网络浏览器运行快速 cgi 程序
我在 C 中创建了一个 hello FastCGI prog
然后我使用“gcc -o hello1 hello1.c -lfcgi”编译了程序
这在我的主目录(在 ubuntu 中)中创建了“hello1”可执行文件当我运行这个文件时,我得到的输出如下:
我想从 Firefox 运行这个文件。由于我是新手,所以我对此一无所知。任何人都可以为我提供详细的答案,我需要遵循哪些步骤才能通过网络浏览器运行它。在将“hello1”文件复制到 /etc/apache/fcgi-bin/hello1.fcgi 后,我尝试将 URL 输入为“http://localhost/fcgi-bin/hello1”,但它给出了 404 错误
php - 休眠 php 进程 (mod_fcgid) 快速消耗 RAM
我希望这是提出这个问题的正确地方,所以:
我们正在运行一个 Debian(虚拟化)服务器,其中 Apache 运行 php 作为 fcgi。今天管理员告诉我,这些进程正在消耗系统上的 RAM。他让我看看我的代码。
好吧,我认为实际上我无法控制 php 进程,因为 Apache 产生了它们,所以这看起来更像是服务器配置问题。似乎每个请求都会产生一个新的 php 进程(这没关系)。在我的脚本终止后,php 进程进入睡眠状态。
这就是top的样子。我按内存排序,这些是 php 进程(它们在用户edem上运行):
你知道如何杀死那些休眠(空闲)的 php 进程吗?有什么我做错了吗?
php - 从符号链接调用 tinyMCE 时出现 PHP 错误“未指定输入文件”
我将tinyMCE与 PHP 压缩器一起使用。我想将它放在一个文件夹中,供我服务器上所有需要它的域使用,而不是每个站点的副本。但是,由于我知道它不是 cross-domains,我想我可以将它放在每个站点都可以通过符号链接访问的文件夹中。
但我收到了这个 PHP 错误:
我的印象是它与 tinyMCE 本身的关系不如与符号链接的关系,但我不知道。
有人知道吗?
谢谢!
更新:
经过大量挖掘,它似乎与 Apache 有关。PHP是通过FCGId运行的,好像是权限错误。但是,如果我使用 mod_php 运行它,我会收到错误 500。
解决方案:
把它作为一个真正的答案,这样问题就不会没有答案......见下文
php - PHP编程段错误
我一直在使用以下方法编写网站:
- Zend Framework 1.11.5(完整的 MVC)
- PHP 5.3.6
- 阿帕奇 2.2.19
- VPS 上的 CentOS 5.6 i686 virtuozzo
- cPanel WHM 11.30.1(构建 4)
- mysql 5.1.56-日志
- mysqli API 5.1.56
突然对mysql做了一些“SHOW CREATE TABLE”查询,我明白了。
我试过禁用加速器但没有成功
有问题的行是:$row = $db->fetchRow("SHOW CREATE TABLE 222AFI");。如果我在它执行之前返回,一切都会好起来的。$db 是 Zend_Db_Adapter_Mysqli 的实例。最糟糕的部分是它不是确定性的。该程序有时可以通过,而另一些则不能。通常它不会在不崩溃 php 的情况下通过该行。
我没有写信给 internals@lists.php.net 因为我没有https://bugs.php.net/bugs-generating-backtrace.php。这可能很愚蠢,但我尝试使用“--enable-debug”重新编译 apache,(这是一个生产服务器)。但是“PHP Apache 模块:运行 httpd -X,并访问使 PHP 崩溃的脚本”是我无法工作的部分。服务器告诉我端口 80 已被使用。
谁能给我一些建议?如果我在做一些疯狂的事情,至少还有其他选择?
我可以尝试在午夜重新编译 apache,但很高兴知道我不会破坏任何东西。你如何看待这对我来说非常重要。
编辑:
我必须用 --enable-debug 编译 php。这很奇怪,它没有像通常那样崩溃。这很难,20 次尝试中可能有一次崩溃。如果用 -X 启动 apache,就更难让 php 崩溃,因为 httpd 响应时间太长。
编辑2:
即使在 20 次尝试之后,如果我在没有 -X 标志的情况下启动 httpd,我也可以让它崩溃。但是我模拟了一个初始化 $_SERVER 变量的脚本,以使 Zend 相信它是通过浏览器调用的。当我用“php crash.php”多次(如50次)执行此脚本时,一切正常。我开始相信它与 php 重用进程有关。我正在使用 mod_fcgi 运行 apache,并且:
php - fread timeout with 'mod_fcgid: read timeout from pipe'
我的应用程序尝试访问超时的 URL 有问题。我正在尝试捕获此超时并使用以下代码解决此问题:
我用于超时的 URL 位于防火墙后面,因此我无法共享它,但它被设计为 sleep() 5 分钟。当我尝试运行此代码时,执行停止在 $head = fread($handle, 1024); 90 秒后,我从服务器“脚本过早结束”收到 500 错误。当我在 apache 日志中的调试级别进行调查时,我看到:
'validateUrl.php' 是我访问这个脚本的 url。我不确定将 FcgidIOTimeout 增加到更高的值是否安全,因为它适用于我的所有页面。有什么想法/意见吗?
系统详细信息:在 Windows NT EPG-WEB 5.2 build 3790 上运行的 PHP 版本 5.2.13 Apache:Apache/2.2.19 (Win32) mod_fcgid/2.3.6
php - PHP 包含总是失败
- SuExec 下带有 VirtualHosts 的 Apache HTTP Server 2.2.21
- PHP 5.3.8 通过 fcgid
- Arch Linux 2011.08.19
我正在从共享主机迁移到 VPS。我在搬家之前运行良好但现在在这一行失败的代码:
错误日志说:
PHP 致命错误:require_once():在 /srv/www/hostname 中打开所需的 '/srv/www/hostname/public/includes/content/header.php' (include_path='.:/usr/share/pear') 失败/public/index.php 在第 3 行
我尝试了没有文档根部分的同一行,有和没有./
,等等,但没有运气。require
与,include_once
或, 也没有区别include
。然而,我可以通过从错误日志中复制粘贴来验证该文件是否存在于该确切位置cd
……</p>
但为了绝对确定,我测试了include
s 的返回值以及file_exists
——它们都返回 false。然而,所有文件都由 SuExec 用户/组 chown'd,并且权限组合没有帮助(在目录或文件上);从644到777都试过了。这是怎么回事?
编辑:
- 相同目录中的文件的结果相同。
- Apache & SuExec 错误日志不报告任何内容。
- 中的安全模式设置为“关闭”
php.ini
。 dirname(__FILE__)
并exec('pwd')
返回与斜杠相同$_SERVER['DOCUMENT_ROOT']
但不带斜杠。fread
,file_get_contents
, 并且realpath(dirname(__FILE__))
都返回 false。set_include_path()
没有效果。- 直接从命令行运行
require
通过返回内部服务器错误,同时返回空白输出;通过运行任一返回空白输出。php-cgi
include
php
这是我的虚拟主机配置:
c++ - reg fcgi 和 c++
我正在使用 c++ 开发一个示例,它将使用 fcgi 协议从 lighttpd 网络服务器获取请求并处理请求并将响应发送给客户端。
我找不到使用 fcgi + lighttpd + c++ 应用程序的任何示例。
我挣扎了一个星期。
请帮助我这样做。
apache2 - httpd.conf 中 ScriptAlias 中的空格阻止 fcgi 进程的启动
我在使用当前的 apache httpd (2.2.21) 和 mod_fcgid (2.3.6) 版本时遇到问题。在我的项目中,httpd.conf 中的 ScriptAlias 指令可能包含空格,因为操作系统路径可以包含空格。这用于与较旧的 httpd 和 fcgid 版本一起使用。但由于我们切换到当前版本,它不再工作了。如果 ScriptAlias 的路径包含空格并且 mod_fcgid 想要启动我的 fcgi 进程,我会收到以下错误日志:
这是一个已知问题吗?我在谷歌上找不到任何东西。
最好的大卫
apache - apache mod_fcgid 问题
我在多个服务器上遇到问题,而不是使用 Apache 模块 mod_fcgid 提供处理请求(票证验证和类似处理)的 cgi 脚本,然后根据处理结果在服务器上提供文件。
我在日志中不断收到以下错误:
这些问题会导致服务器变慢,有时会导致服务暂时不可用错误。
服务器上的流量很大,我目前配置了以下 fcgi 指令,如下所示:
服务器上的平均负载正常,进程数平均为 250 个进程。
我对这个问题做了几天的研究,有人说这是一个权限问题,我听从了他们的建议,没有帮助。我尝试调整上面的参数,这些是我尝试过的最终值,但它们效果不佳。我也在尝试使用 nginx 代替 apache,但我找不到合适的方法来使用 nginx 在服务器上以这种高负载运行 cgi 脚本。
我能做些什么来解决这个问题?