ngx_http_fastcgi_module模块

该模块转发请求到FastCGI服务器,不支持php模块方式

1、fastcgi_pass address;(Context:location, if in location)

address为后端的fastcgi server的地址

2、fastcgi_index name;

fastcgi默认的主页资源

示例:

fastcgi_index index.php;

3、fastcgi_param parameter value [if_not_empty];

设置传递给 FastCGI服务器的参数值,可以是文本,变量或组合

示例1:

1)在后端服务器先配置fpm server和mariadb-server

2)在前端nginx服务上做以下配置:

location ~* \.php$ {
    fastcgi_pass 后端fpm服务器IP:9000;
    fastcgi_index index.php;
    fastcgi_param SCRIPT_FILENAME
    /usr/share/nginx/html$fastcgi_script_name;
    include fastcgi_params;
    …
}

示例2:通过/pm_status和/ping来获取fpm server状态信息

location ~* ^/(pm_status|ping)$ {
    include fastcgi_params;
    fastcgi_pass 后端fpm服务器IP :9000;
    fastcgi_param SCRIPT_FILENAME $fastcgi_script_name;
}

4、fastcgi_cache_path path [levels=levels][use_temp_path=on|off]keys_zone=name:size [inactive=time] [max_size=size] [manager_files=number] [manager_sleep=time] [manager_threshold=time][loader_files=number] [loader_sleep=time][loader_threshold=time] [purger=on|off] [purger_files=number] [purger_sleep=time] [purger_threshold=time];

定义fastcgi的缓存;

  • path 缓存位置为磁盘上的文件系统
  • max_size=size 磁盘path路径中用于缓存数据的缓存空间上限
  • levels=levels:缓存目录的层级数量,以及每一级的目录数量
  • levels=ONE:TWO:THREE

示例:

leves=1:2:2

keys_zone=name:size

k/v映射的内存空间的名称及大小

inactive=time 非活动时长

5、fastcgi_cache zone | off;(Context:http, server, location)

调用指定的缓存空间来缓存数据

6、fastcgi_cache_key string;

定义用作缓存项的key的字符串

示例:

fastcgi_cache_key $request_rui;

7、fastcgi_cache_methods GET | HEAD | POST ...;

为请求方法使用缓存

8、fastcgi_cache_min_uses number;

缓存空间中的缓存项在inactive定义的非活动时间内至少要被访问到此处所指定的次数方可被认作活动项

9、fastcgi_keep_conn on | off;

收到后端服务器响应后,fastcgi服务器是否关闭连接,建议启用长连接

10、fastcgi_cache_valid [code ...] time;

不同的响应码各自的缓存时长

示例:

http {
    fastcgi_cache_path /var/cache/nginx/fcgi_cache
    levels=1:2:1 keys_zone=fcgicache:20m inactive=120s;
    ...
    server {
        location ~* \.php$ {
        ...
        fastcgi_cache fcgicache;
        fastcgi_cache_key $request_uri;
        fastcgi_cache_valid 200 302 10m;
        fastcgi_cache_valid 301 1h;
        fastcgi_cache_valid any 1m;
        ...
        }
    }
}

原文地址:http://blog.51cto.com/13520924/2092793

时间: 2024-11-13 04:45:38

ngx_http_fastcgi_module模块的相关文章

ngx_http_fastcgi_module模块.md

ngx_http_fastcgi_module ngx_http_fastcgi_module模块允许将请求传递到FastCGI服务器. fastcgi_bind Syntax: fastcgi_bind address [transparent] | off; Default: - Context: http, server, location This directive appeared in version 0.8.22. 使与FastCGI服务器的传出连接源自具有可选端口(1.11.2

nginx 基础总结

Nginx官方站点:http://nginx.org/ 解决C10k的问题:能支持较大并发的服务器程序,突破了1万个请求. nginx功能: 可以当做静态的web服务器: core模块实现http功能: 支持虚拟主机(基于port.hostname.ip方式): keepalived保持会话 访问日志 url rewrite重写 路径别名 基于ip访问控制 速率限制及并发数量限制等: 可作为(http的)反代服务器及负载均衡器: proxy模块实现反代 upstream模块实现负载均衡 支持fa

浅谈Nginx(二)—http下server配置

此文介绍Nginx下的http模块,着重介绍http模块下的server服务 --------依据"马哥教育"主讲人马永亮导师的上课笔记整理------- 目录  一. http相关的基本配置:     1) listen                2) server_name           3) tcp_nodelay     4) sendfile      二. 定义路径相关的配置:     1)root path     2)location     3)alias 

Nginx学习.md

正常运行的必备配置 user Syntax: user user [group]; Default: user nobody nobody; Context: main 指定运行worker进程的用户 和组. pid Syntax: pid file; Default: pid nginx.pid; Context: main 指定nginx的pid文件: worker_rlimit_nofile Syntax: worker_rlimit_nofile number; Default: - C

Nginx隐藏主机信息,proxy_hide_header 与fastcgi_hide_header

Nginx中proxy_hide_header 与fastcgi_hide_header都可以隐藏主机头信息,两者在具体使用时还是有着一定的区别的.刚好业务使用的nginx反向代理在显示响应头时将后端机器的PHP版本显示了出来,虽说在用户体验和安全上并无大的影响,但是将PHP版本信息暴漏出来总是不妥的.借此机会,可以复习下proxy_hide_header 与fastcgi_hide_header的使用. proxy_hide_header在ngx_http_proxy_module下,fast

nginx配置进阶(三)

nginx配置进阶(三) ======================================================================================= 概述: ======================================================================================= ngx_http_fastcgi_module模块:构建lnmp  1.The ngx_http_fastcgi_

记一次nginx部署yii2项目时502 bad gatewary错误的排查

周六闲来无事,就试着安装和部署下yii2,安装过程没什么问题,但部署到nginx上时遇到了502 bad gatewary问题,折腾了半天才搞定.这个问题是我以前在部署yii2时没有遇到过的,因此记在这里以备忘. 1,安装和部署环境 操作系统:macOS,php版本:5.6,nginx版本:1.10.1,yii2版本:2.0. 2,yii2的安装 yii2的安装很简单,参考官网的手册即可.我这里安装的是yii2-app-advanced(Yii 2 Advanced Project Templa

Nginx的配置2

ngx_http_gzip_module:The ngx_http_gzip_module module is a filter that compresses responses using the "gzip" method. This often helps to reduce the size of transmitted data by half or even more. 1.gzip on | off;Enables or disables gzipping of res

Nginx服务配置综合实例

################################ 1.安装nginx,yum安装,编译安装 Nginx是一个免费,开源,高性能的HTTP服务器,同时也可以作为反向代理服务器,支持IMAP/POP3邮件代理服务器,支持模块化定制功能. Nginx支持三种运行模式,默认为worker模式: prefork:进程模型,两级结构,主进程master负责生成和管理子进程,每个子进程负责响应一个请求: worker:线程模型,三级结构,主进程负责生成子进程,每个子进程负责生成多个线程,每个线