1. 程式人生 > >nginx 模塊簡介

nginx 模塊簡介

asi sta 進程管理 其他 進程 管理 補充 memcached pan

nginx模塊一般分為5類:核心模塊、標準http模塊、可選http模塊、郵件服務模塊、第三方模塊。

其中核心模塊和標準http模塊在快速編譯之後就包含在了nginx中。

主要看一下核心模塊、標準http模塊和可選http模塊,這些模塊都可以在ngx_modules.c中找到

  1 #include <ngx_config.h>
  2 #include <ngx_core.h>
  3 
  4 
  5 
  6 extern ngx_module_t  ngx_core_module;
  7 extern ngx_module_t  ngx_errlog_module;
8 extern ngx_module_t ngx_conf_module; 9 extern ngx_module_t ngx_events_module; 10 extern ngx_module_t ngx_event_core_module; 11 extern ngx_module_t ngx_epoll_module; 12 extern ngx_module_t ngx_regex_module; 13 extern ngx_module_t ngx_http_module; 14 extern ngx_module_t ngx_http_core_module;
15 extern ngx_module_t ngx_http_log_module; 16 extern ngx_module_t ngx_http_upstream_module; 17 extern ngx_module_t ngx_http_static_module; 18 extern ngx_module_t ngx_http_autoindex_module; 19 extern ngx_module_t ngx_http_index_module; 20 extern ngx_module_t ngx_http_auth_basic_module;
21 extern ngx_module_t ngx_http_access_module; 22 extern ngx_module_t ngx_http_limit_conn_module; 23 extern ngx_module_t ngx_http_limit_req_module; 24 extern ngx_module_t ngx_http_geo_module; 25 extern ngx_module_t ngx_http_map_module; 26 extern ngx_module_t ngx_http_split_clients_module; 27 extern ngx_module_t ngx_http_referer_module; 28 extern ngx_module_t ngx_http_rewrite_module; 29 extern ngx_module_t ngx_http_proxy_module; 30 extern ngx_module_t ngx_http_fastcgi_module; 31 extern ngx_module_t ngx_http_uwsgi_module; 32 extern ngx_module_t ngx_http_scgi_module; 33 extern ngx_module_t ngx_http_memcached_module; 34 extern ngx_module_t ngx_http_empty_gif_module; 35 extern ngx_module_t ngx_http_browser_module; 36 extern ngx_module_t ngx_http_upstream_ip_hash_module; 37 extern ngx_module_t ngx_http_upstream_least_conn_module; 38 extern ngx_module_t ngx_http_upstream_keepalive_module; 39 extern ngx_module_t ngx_http_write_filter_module; 40 extern ngx_module_t ngx_http_header_filter_module; 41 extern ngx_module_t ngx_http_chunked_filter_module; 42 extern ngx_module_t ngx_http_range_header_filter_module; 43 extern ngx_module_t ngx_http_gzip_filter_module; 44 extern ngx_module_t ngx_http_postpone_filter_module; 45 extern ngx_module_t ngx_http_ssi_filter_module; 46 extern ngx_module_t ngx_http_charset_filter_module; 47 extern ngx_module_t ngx_http_userid_filter_module; 48 extern ngx_module_t ngx_http_headers_filter_module; 49 extern ngx_module_t ngx_http_copy_filter_module; 50 extern ngx_module_t ngx_http_range_body_filter_module; 51 extern ngx_module_t ngx_http_not_modified_filter_module; 52 53 ngx_module_t *ngx_modules[] = { 54 &ngx_core_module, 55 &ngx_errlog_module, 56 &ngx_conf_module, 57 &ngx_events_module, 58 &ngx_event_core_module, 59 &ngx_epoll_module, 60 &ngx_regex_module, 61 &ngx_http_module, 62 &ngx_http_core_module, 63 &ngx_http_log_module, 64 &ngx_http_upstream_module, 65 &ngx_http_static_module, 66 &ngx_http_autoindex_module, 67 &ngx_http_index_module, 68 &ngx_http_auth_basic_module, 69 &ngx_http_access_module, 70 &ngx_http_limit_conn_module, 71 &ngx_http_limit_req_module, 72 &ngx_http_geo_module, 73 &ngx_http_map_module, 74 &ngx_http_split_clients_module, 75 &ngx_http_referer_module, 76 &ngx_http_rewrite_module, 77 &ngx_http_proxy_module, 78 &ngx_http_fastcgi_module, 79 &ngx_http_uwsgi_module, 80 &ngx_http_scgi_module, 81 &ngx_http_memcached_module, 82 &ngx_http_empty_gif_module, 83 &ngx_http_browser_module, 84 &ngx_http_upstream_ip_hash_module, 85 &ngx_http_upstream_least_conn_module, 86 &ngx_http_upstream_keepalive_module, 87 &ngx_http_write_filter_module, 88 &ngx_http_header_filter_module, 89 &ngx_http_chunked_filter_module, 90 &ngx_http_range_header_filter_module, 91 &ngx_http_gzip_filter_module, 92 &ngx_http_postpone_filter_module, 93 &ngx_http_ssi_filter_module, 94 &ngx_http_charset_filter_module, 95 &ngx_http_userid_filter_module, 96 &ngx_http_headers_filter_module, 97 &ngx_http_copy_filter_module, 98 &ngx_http_range_body_filter_module, 99 &ngx_http_not_modified_filter_module, 100 NULL 101 };

1、核心模塊

1 extern ngx_module_t  ngx_core_module;
2 extern ngx_module_t  ngx_errlog_module;
3 extern ngx_module_t  ngx_conf_module;
4 extern ngx_module_t  ngx_events_module;
5 extern ngx_module_t  ngx_event_core_module;
6 extern ngx_module_t  ngx_epoll_module;
7 extern ngx_module_t  ngx_regex_module;

上面的都是核心模塊,主要包括2類功能,一類功能是主題功能,包括進程管理、權限控制、錯誤日誌記錄、配置解析等;另一類功能是用於響應請求事件必須的功能,包括事件驅動機制、正則表達式解析等。

其他的模塊後續再補充

nginx 模塊簡介