我最近从apache移动到Nginx / fastcgi解决scheme,我运行在Fedora系统上,没有任何问题,但是,因为我把所有的东西都搬到了Gentoo上,Spawn-fCGI / fastcgi php守护进程死了,我找不到在/ var / log / messages中输出任何错误报告,所以我不知道为什么会发生这种情况。 我已经看到fastcgi与fedora发行版有所不同,因为它有不同的conf文件和init.d启动脚本,有人可以帮助我使它更稳定吗? 请求的数量与我在Fedora上的请求数量没有任何区别,所以我使用了发行版随附的默认configuration。在大约几个小时内,它就会死亡。 非常感谢你
我在Nginx / FastCGI / Django上运行一个Web服务。 我们的处理时间相当长,CPU密集型,我希望能够运行多个Django / FastCGI进程来共享负载。 我如何设置Nginx的路由请求从单一来源到多个Django / FastCGI的实例? (我可以在多个端口/套接字上运行多个实例,但我不知道如何让Nginx共享它们之间的处理负载。) 任何帮助非常感谢。
我有麻烦build立一个URL重写和FastCGI的Nginx的组合。 fastcgi接口后面的应用程序服务器期望/ myapp /作为基本path。 我想在我的http://myserver.com/下访问 upstream appfcgi { server 127.0.0.1:6000; server 127.0.0.1:6001; server 127.0.0.1:6002; fair; } server { listen 80 default; server_name myserver.com; root /var/www; location / { rewrite ^(/.*)$ /myapp$1 last; } location /myapp/ { include /etc/nginx/fastcgi_params; fastcgi_intercept_errors on; fastcgi_pass appfcgi; } 无论我尝试什么,我总是得到显示的应用程序服务器的根path。 我记得我有麻烦,然后用Apache做同样的事情,但直到今天我还是试图用nginx来做。 任何帮助表示赞赏。 谢谢。
我一直在使用谷歌search,我能find的是,当你发布到HTML文件时,可能会发生这个错误。 在我的设置中,我有一个重写规则,它基本上隐藏了url中的index.php,我花了很长的时间认为它跟这个有关。 得到工作正常。 方法不允许 POST请求不允许用于URL / post.php 这是我的设置: Debian squeeze / AMD64 nginx version: nginx/1.1.8 PHP 5.3.3-7+squeeze3 with Suhosin-Patch (cli) (built: Jun 28 2011 08:24:40) Copyright (c) 1997-2009 The PHP Group Zend Engine v2.3.0, Copyright (c) 1998-2010 Zend Technologies with Suhosin v0.9.32.1, Copyright (c) 2007-2010, by SektionEins GmbH
我有一个运行WHM的CentOS服务器,它使用FastCGI( mod_fcgid )在SuExec上运行Apache 2.0上的PHP 5.2.17。 当我启动Apache时,它开始罚款和服务请求。 如果我以root身份在terminal上运行ps ,我会看到php进程,它们由它们的httpd父进程拥有。 经过X次的时间 – 不同的时间,通常不会超过几个小时 – 服务器将开始产生由init进程ID( 1 )拥有的PHP作业, 良好的上市示例: 12918 18254 /usr/bin/php 12918 18257 /usr/bin/php 12918 18293 /usr/bin/php 12918 18545 /usr/bin/php 12918 18546 /usr/bin/php 12918 19016 /usr/bin/php 12918 19948 /usr/bin/php 然后后来这样的事情: 1 6800 /usr/bin/php 1 6801 /usr/bin/php 1 7036 /usr/bin/php 1 8788 /usr/bin/php 1 10488 /usr/bin/php 1 10571 […]
我有一个nginx的网站configuration,这是完美的redirect所有.html请求通过/index.php 。 但是它不会将test.php重写为/index.php ,而是会抛出一个404错误。 任何人都可以摆脱灯吗? 这是我的网站configuration: server { listen 80 default_server; location / { root /srv/www/htdocs; index index.php; try_files $uri $uri/ /index.php; location ~* \.php$ { fastcgi_pass 127.0.0.1:9000; fastcgi_param HTTPS on; # <– add this line fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include /etc/nginx/fastcgi_params; fastcgi_buffer_size 128k; fastcgi_buffers 256 4k; fastcgi_busy_buffers_size 256k; fastcgi_temp_file_write_size 256k; fastcgi_intercept_errors on; } […]
所以我发现了一些关于这类问题的其他线索,但是他们的解决scheme并不适合我。 基本上,这是我的开发机器,安装已经好几个星期了,但突然间,我得到了很多与这些错误的问题: [Thu Sep 27 16:28:43 2012] [error] [client 127.0.0.1] FastCGI: comm with server "/Library/WebServer/Documents/php5.external" aborted: idle timeout (60 sec) [Thu Sep 27 16:28:43 2012] [error] [client 127.0.0.1] FastCGI: incomplete headers (0 bytes) received from server "/Library/WebServer/Documents/php5.external" 我没有改变任何有关服务器configuration。 显然有些事情已经改变了,或者我变得不幸了。 安装如下: Apache/2.2.22 (Unix) DAV/2 mod_fastcgi/2.4.6 mod_ssl/2.2.22 OpenSSL/0.9.8r $ php-fpm -v PHP 5.3.15 (fpm-fcgi) (built: Aug 19 […]
gzip如何closures一个特定的位置和所有的子目录? 我的主要网站是在http://mydomain.com ,我想closureshttp://mydomain.com/foo和http://mydomain.com/foo/barclosuresgzip。 在nginx.conf打开gzip 。 我尝试closuresgzip ,如下所示,但Chrome开发工具中的响应头显示Content-Encoding:gzip 。 gzip / output缓冲应该如何正确禁用? 尝试 : server { listen 80; server_name www.mydomain.com mydomain.com; access_log /var/log/nginx/access.log; error_log /var/log/nginx/error.log; root /var/www/mydomain/public; index index.php index.html; location / { gzip on; try_files $uri $uri/ /index.php?$args ; } location ~ \.php$ { fastcgi_pass unix:/var/run/php5-fpm.sock; fastcgi_index index.php; include fastcgi_params; fastcgi_read_timeout 300; } location /foo/ […]
我在运行GitLab的服务器上运行GitWeb(本质上是一个CGI脚本)。 我的目标是在不注册人员的情况下提供对GitLab存储库的只读访问权限。 我已经把GitWeb指向了有权限drwxrws—拥有者:group git:git存储库文件夹。 FastCGI包装与用户运行:组www-data:www:data ,所以我添加了www-data组www-data 。 我也通过改变这个用户来validationwww-data到版本库的访问。 但是,当我运行GitWeb时,CGI脚本无法访问存储库,无法获取我的存储库列表。 一切工作正常,如果我将rx权限添加到其他部分(最后三重),但我不想混乱的文件夹的权限,因为显而易见的原因。 顺便说一句,我运行Debian稳定,并没有安装SE-Linux或类似的东西。 任何帮助将不胜感激。
我知道这不是一个独特的问题,但也许这种performanceforms是独一无二的。 在其他地方find的答案不符合我认为是我的情况。 我有一个托pipe几个网站的盒子,尽pipe我没有发现function问题,但是我发现这个消息在我的Nginx错误日志中几乎遍布每个站点。 我读的所有内容都指向了我的FastCGI参数,特别是SCRIPT_FILENAME ,但是我的价值似乎与SCRIPT_FILENAME的build议是一致的: fastcgi_param SCRIPT_FILENAME $request_filename; 我读了错误的build议? 我也注意到,在某些情况下(但不是全部) ,日志中的host值是Alogging指向的那个,但不是Nginx正在侦听的那个。 任何想法可能会发生什么? 在404的情况下,这个错误是“预期的”,也许呢?