阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

Nginx对fastcgi的配置

177次阅读
没有评论

共计 1470 个字符,预计需要花费 4 分钟才能阅读完成。

fastcgi 配置

我们这里说的 fastcgi 配置专指 nginx 对 fastcgi 的配置,fastcgi 本身的配置介绍在 fastcgi 安装文中有说明。

nginx 的 fastcgi 模块提供的命令

fastcgi_pass

这个命令是指定将 http 代理到哪个 fastcgi 服务端接口。fastcgi_pass 后面是填写 fastcgi 服务端地址的,这个地址可以是域地址,也可以是 Uninx- 域套接字。

fastcgi_pass localhost:9000;


fastcgi_pass unix:/tmp/fastcgi.socket;

这里的设置需要和 fastcgi 自身配置的 listen_address 做相应地对应。

比如上面那个例子,listen_addree 就应该这么配置:

<value name="listen_address">/tmp/fastcgi.socket</value>

fastcgi_param

这个命令是设置 fastcgi 请求中的参数,具体设置的东西可以在 $_SERVER 中获取到。

比如你想要设置当前的机器环境,可以使用 fastcgi_param ENV test; 来设置。

对于 php 来说,最少需要设置的变量有:

fastcgi_param SCRIPT_FILENAME /home/www/scripts/php$fastcgi_script_name;
fastcgi_param QUERY_STRING    $query_string;

对于 POST 请求,还需要设置:
fastcgi_param REQUEST_METHOD request m ethod;fastcgi p aramCONTENT T YPE  requestmethod;fastcgiparamCONTENTTYPE content_type;
fastcgi_param CONTENT_LENGTH $content_length;

fastcgi_param 还可以使用 if_not_empty 进行设置。意思是如果 value 非空才进行设置。

fastcgi_param HTTPS   $https if_not_empty;

fastcgi_index

这个命令设置了 fastcgi 默认使用的脚本。就是当 SCRIPT_FILENAME 没有命中脚本的时候,使用的就是 fastcgi_index 设置的脚本。

以上三个命令能组成最基本的 fastcgi 设置了

location / {fastcgi_pass   localhost:9000;
  fastcgi_index  index.php;
 
  fastcgi_param  SCRIPT_FILENAME  /home/www/scripts/php$fastcgi_script_name;
  fastcgi_param  QUERY_STRING     $query_string;
  fastcgi_param  REQUEST_METHOD   $request_method;
  fastcgi_param  CONTENT_TYPE     $content_type;
  fastcgi_param  CONTENT_LENGTH   $content_length;
}

fastcgi_hide_header,fastcgi_ignore_headers,fastcgi_pass_header

fastcgi_cache

这个命令是开启 fastcgi 的文件缓存。这个缓存可以将动态的页面存为静态的。以提供为加速或者容灾使用。

本文永久更新链接地址:http://www.linuxidc.com/Linux/2017-01/139817.htm

正文完
星哥说事-微信公众号
post-qrcode
 
星锅
版权声明:本站原创文章,由 星锅 2022-01-21发表,共计1470字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中