Articles of fastcgi

Python作为Windows和Apache下的FastCGI

我需要在windows / apache / FastCGI的现有系统下运行一个简单的请求/响应python模块。 所有的Python的FastCGI封装我尝试只为Linux工作(他们使用socket.fromfd()和其他这样的鞭子)。 有没有在Windows下运行的包装?

mod_fcgid:multithreadingFastCGI现在还是在计划的将来?

迄今为止的事实 根据“ mod_fcgi不是mod_fastcgi的替代者 ”和“ mod_fcgid和multithreadingFastCGI应用程序的问题 ” mod_fcgid ,并不是为了期望FastCGI服务器能够同时处理多个请求,即不是为了期望FastCGI服务器是multithreading的。 前者说: 他们都支持已发布的“FastCGI”协议,但他们如何控制他们的FastCGI服务器差别很大。 mod_fcgid快速消除了FastCGI服务器并开始新的服务器。 后者说: 看来mod_fcgid没有意识到我的服务器是multithreading的,并且能够处理多个请求。 这只是两个引号,其他地方也有一些。 连续的问题 线程化不仅仅是为了节省CPU和内存,避免了创build一个新进程的开销(创build一个线程比创build一个进程要轻),这可以通过硬件或操作系统的性能来缓解。 这也是一个合乎逻辑的问题,不易于缓解:线程属于同一个进程,不仅仅是性能,还有逻辑,例如。 进程不能共享什么线程可以共享,因为进程独立运行(模IPC,但不一样)。 至less由于这个逻辑的原因,可能会引发multithreadingFastCGI服务器的问题。 FastCGI服务器可能拥有一个上下文(在进程之间共享可能很大且成本高昂),当它被devise成一个multithreading服务器时,它对于所有的请求处理程序是全局的。 为每个并发请求分配一个新进程不允许确保一个共同的上下文。 这个问题 以上两个引文是否真实(一个是2011年,另一个是2010年)? 我在网上search了这个话题,但找不到任何相关的东西。 如果它仍然是真的,那么,它会一直是真的还是有一个预期的计划mod_fcgid ,要知道multithreading的FastCGI服务器,并接受这些可能被devise为处理多个并发请求?

使用mod_headers和php-fpm / mod_fastcgi的问题

我试图将HSTS头添加到每个响应,跨我的应用程序。 我的第一个想法是使用mod_headers – 我把这个指令放在documentmentroot的.htaccess文件中: Header set Strict-Transport-Security "max-age=7776000" 这工作正常使用Apache 2.2和mod_php我的本地设置。 所有资源都使用适当的HSTS头进行响应。 我的部署环境使用Apache 2.2和mod_fastcgi,上述技术适用于除 php文件以外的任何资源。 另一个SO 问题有一个类似的问题,传入的请求 (?)有标头被剥离 – 但我担心修改离开服务器的响应标题。 如何在.htaccess文件的上下文中将响应头添加到php资源中?

在apache centos上的多个php

我怎样才能同时在Centos 6.5上运行多个php版本? 就是这样。 要求 Centos 6.5(6.6和7可能的作品) Apache的Apache / 2.2.15(可能与其他版本的作品) 本指南安装和使用 FASTCGI(请参阅备选安装的注释) PHPFARM 这种安装是这样做的,所以它会与iredmail兼容。 您可以使用此设置在服务器上安装iredmail。 步骤1 安装PHPFarm yum install gcc libxml2-devel openssl-devel bzip2-devel curl-devel libjpeg-devel freetype-devel icu libicu-devel gcc-c++ postgresql-devel aspell-devel git -y $ cd /opt/ $ git clone https://github.com/cweiske/phpfarm.git phpfarm $ cd phpfarm/src/ $ cd /opt/phpfarm/src/ 对于每个版本的PHP你都想运行这个。 但是,如果你想自定义模块,如MySQL支持跳过这一点,看到它下面的部分。 $ ./compile.sh 5.3.1 $ ./compile.sh 5.3.3 $ […]

Apache的mod_php或FastCGI? 这对WordPress有好处?

我有关于在不同的configuration,如mod_php,CGI,FastCGI等运行PHP的基本想法。 在我的研究结果和testing中,我发现FastCGI稍好一些。 我最喜欢FastCGI对SuEXEC的支持。 等等,我不想在这里再次进入标杆业务。 如果你浏览网页,你会发现在每秒处理的请求数量方面,certificate一种方法的人比另一种方法更快。 那么它的好指标,但我对不同的因素感兴趣,这里是我的问题… 运行PHP的哪种方法消耗更less的内存? 另外哪种方法消耗的内存几乎不变。 我看到mod_php服务器的内存使用量在300MB到800MB之间波动,每隔几秒钟。 但是用FastCGI,服务器的第一个响应来得非常晚。 我看到FastCGI每个网页请求都有一个初始延迟。 一旦来自服务器的第一个响应到达,其他项目,如图像,CSS,JS加载得更快。 运行两者的混合可以吗? 我在专用服务器上有5个站点。 如果我用mod_php运行几个并用FastCGI来rest,可以吗? 我相信我的服务器closures主要是由于mod_php的不正确的内存使用。 我检查了所有的脚本。 有什么办法可以确保服务器上的内存消耗几乎保持不变? .htaccess的复杂性会显着影响内存使用情况吗? 如果是的话,是否可能是造成服务器内存不足的唯一原因? apache MPM prefork / worker设置会影响内存消耗吗? 它们是否同样影响mod_php和FastCGI模式? 当我运行“顶部”命令,我看到apache(httpd)消耗大约40MB的内存。 有很多httpd运行的实例。 除此之外,FastCGI还分发了一些类似大小的进程。 什么是httpd进程正常的内存大小? 当我在我们的所有网站上运行Wordpress时,在这种情况下这将是一个好方法吗? FastCGI / SuExec是否可以正常使用APC? 我需要重新configurationAPC才能使用SuEXEC和FastCGI。 请注意,我对在DIGG或交通高峰期幸存的兴趣不大。 我想要一个可以使服务器稳定和可预测的方法。 对不起,如果我很困惑,但我真的在一团糟。 我有512MB的物理内存,400MB的交换和我的服务器像疯了似的内存不足。 平均内存需求大约为350MB,只是内存使用率高峰使内存不能使用几秒钟,如果less数额外的命中收到less数第二个窗口中,Apache崩溃,而MySQL和所有其他家伙保持良好运行。 请帮我出去。 我不会买更多的内存或硬件。 我敢肯定,这个问题是在我的configuration。 对不起,如果我听起来傲慢或无知。

如何增加MAMP / MAMP Pro上的apache fastCGI超时?

有谁知道如何在MAMP / MAMP Pro上增加apache fastCGI超时? 我到处看,但似乎无法find它。 任何帮助一如既往的赞赏。 谢谢,Codarz360

mod_fcgid:ap_pass_brigade在handle_request函数中失败

我一直在我的错误日志中得到警告: (103)Software caused connection abort: mod_fcgid: ap_pass_brigade failed in handle_request function 这是我的fcgid.conf <IfModule mod_fcgid.c> SocketPath /var/lib/httpd/fcgid/sock IdleTimeout 200 IdleScanInterval 200 ProcessLifeTime 1000 MaxProcessCount 1000 DefaultMinClassProcessCount 3 DefaultMaxClassProcessCount 100 IPCConnectTimeout 8 IPCCommTimeout 200 BusyTimeout 300 </IfModule> 服务器偶尔会提供一个500错误,然后很快就会发生一次,然后再发送一个500错误…有没有办法阻止这种情况的发生?

Apache与IIS PHP性能对比

有没有人知道任何链接到现实的性能比较的IIS与Apache的PHP托pipe? 我正在寻找利用现有的基础设施从.NET到PHP应用程序的技术的变化,但我找不到有关在不同平台上托pipe的PHP的任何信息。 总的来说,有一些关于IIS与Apache,或ASP.NET与PHP ..或其他语言服务器与服务器,语言与语言,但没有服务器/语言与服务器/语言。 我目前的方向是使用FastCGI的PHP ..看起来不错。 只需要certificate它或find一个令人信服的理由来拒绝我习惯的大可爱MS怪物。 更新 Windows环境是运行IIS6的Win2k3,FastCGI服务于PHP扩展。 还计划使用eAccelerator或类似的脚本caching。

session_start似乎很慢(但只是有时)

出于某种奇怪的原因,就在今天,我们的服务器在会议开始时决定非常缓慢。 对于每个session_start,服务器在30秒后超时,或者大约需要20秒才能开始会话。 这很奇怪,因为它已经很久没有这样做了(我们的服务器最后一次是在7个月前)。 我试图改变会议运行通过数据库,而且工作正常,但是,因为我们目前的网站build立,它会花上几天去每一页,并改变会议加载包括一个新的会议处理程序。 所以我的问题依然是: 为什么这么慢,为什么有时呢? 我们在24GB内存的专用hetzner服务器上运行,并且运行速度足够快,可以运行一个简单的networking服务器(至less我相信,但我不确定)。 我们使用apache + fastcgi + php5安装程序在服务器上运行debian。 服务器不报告多less负载,既不通过服务器状态以及top命令。 Vnstat报告没有任何问题与我们的networking链接(再次,这不会导致缓慢的本地会话处理)。 IOtop报告没有问题的进程接pipe整个硬盘。 如果通过vim完成,那么写入会话文件所在的tmp文件夹的工作就会很快。 再次,为了清楚起见,我主要关心的不是我们是否应该切换到数据库或内存caching版本的会话,只是问为什么会发生这种情况,因为我所看到的一切似乎工作正常,除了PHP本身。 编辑 :我们的PHP tmp目录中的最大文件是2.9 MB,所以没有什么应该产生影响,我相信。 更新 :我从来没有找出什么是错的和/或如何解决它,但问题消失后,我们切换到memcached /数据库会话。

Apache – 如何获得REMOTE_USERvariables

以前我使用IIS服务器作为PHP服务器。 目前,它是Apache。 在IIS上,我可以访问variables$_SERVER ['REMOTE_USER'] ,它返回用户名和域名(例如domain \ user),但是在安装XAMPP之后,这个variables不可用。 我应该怎么做才能让这个variables重新获得? 我的应用程序是在没有互联网连接的本地networking上