--prefix=<path>
:Nginx 安裝的根路徑,全部其餘的路徑都要依賴於該選項。--sbin-path=<path>
:指定 Nginx 二進制文件的路徑。若是沒有指定,那麼這個路徑會依賴於 --prefix 選項。--conf-path=<path>
:若是在命令行沒有指定配置文件,那麼將會經過這裏指定路徑,Nginx 將會去那裏查找它的配置文件。--error-log-path=<path>
:指定錯誤文件的路徑,Nginx 將會往其中寫入錯誤日誌文件,除非有其餘的配置。--pid-path=<path>
:指定的文件將會寫入 Nginx master 進程的 pid,一般在 /var/run 下。--lock-path=<path>
:共享存儲器互斥鎖文件的路徑。--user=<user>
:worker 進程運行的用戶。--group=<group>
:worker 進程運行的組。--with-file-aio
:爲 FreeBSD 4.3+ 和 Linux 2.6.22+ 系統啓用異步 I/O。--with-debug
:這個選項用於啓用調試日誌。在生產環境的系統中不推薦使用該選項。--with-cc=<path>
:若是想設置一個不在默認 PATH 下的 C 編譯器。--with-cpp=<path>
:設置 C 預處理器的相應路徑.--with-cc-opt=<options>
: 指定必要的 include 文件路徑,可能 d(-I<path)指出,也多是優化(-O4)和指定一個 64 位構建。--with-ld-opt=<options>
:包含鏈接器庫的路徑(-L<path>)和運行路徑(-R<path>)。--with-cpu-opt=<cpu>
:經過該選項爲特定的 CPU 構建 Nginx。--with-mail
:該選項用於啓用 mail 模塊,該模塊默認沒有激活。--with-mail_ssl_module
:爲了代理任何一種類型的使用 SSL/TLS 的 mail,激活該模塊。--without-mail_pop3_module
:在啓用 mail 模塊後,單獨地禁用 POP3 模塊。--without-mail_imap_module
:在啓用 mail 模塊後,單獨地禁用 IMAP 模塊。--without-mail_smtp_module
:在啓用 mail 模塊後,單獨地禁用 SMTP 模塊。--without-http
:該選項將徹底禁用 http 模塊,若是你只想支持 mail,那麼可使用它。對於典型的 mail 代理,可配置爲以下:數據庫
./configure -with-mail --with-mail_ssl_module --with-openssl=${BUILD_DIR}/openssl-1.0.1c
對於郵件服務器來講,如今幾乎每個郵件服務器的安裝都須要安裝 SSL/TLS,並沒沒有一個郵件代理啓用了預期功能的用戶。推薦靜態編譯 OpenSSL,以便對操做系統中的 OpenSSL 庫沒有依賴性。緩存
--without-http-cache
:在使用 upstream 模塊時,Nginx 可以配置本地緩存內容。這個選項可以禁用緩存。--with-http_perl_module
:Nginx 配置可以擴展使用 Perl 代碼。這個選項啓用這個模塊(然而使用這個模塊會下降性能)。--with-perl_modules_path=<path>
:對於額外嵌入的 Perl 模塊,使用該選項指定該 Perl 解析器的路徑。也能夠經過配置選項來指定 Perl 模塊解析器的位置。--with-perl=<path>
:若是在默認的路徑中沒有找到 Perl,那麼指定 Perl(5.6 版本以上)的路徑。--http-client-body-temp-path=<path>
:從客戶端收到請求後,該選項設置的目錄用於做爲請求體臨時存放的目錄。若是 WebDAV 模塊啓用,那麼推薦設置該路徑爲同一個文件系統上的目錄做爲最終的目的地。--http-proxy-temp-path=<path>
:在使用代理後,經過該選項設置存放臨時文件路徑。--http-fastcgi-temp-path=<path>
:設置 FastCGI 臨時文件的目錄。--http-uwsgi-temp-path=<path>
:設置 uWSGI 臨時文件的目錄。--http-scgi-temp-path=<path>
:設置 SCGI 臨時文件的目錄。--with-http_ssl_module
:若是須要對流量進行加密,那麼可使用這個選項,在 URLs 中開始部分將會是 https(須要 OpenSSL)。--with-http_realip_module
:若是你的 Nginx 在七層負載均衡器或者是其餘設備以後,它們將 Http 頭中的客戶端 IP 地址傳遞,那麼你將會須要啓用這個模塊。在多個客戶處於一個 IP 地址下使用。--with-http_addition_module
:這個模塊做爲一個輸出過濾器,使你可以在請求通過一個 location 前或者後時在該 location 自己添加內容。--with-http_xslt_module
:該模塊用於 XML 響應轉換,基於一個或者多個 XSLT 格式(須要 libxml2 和 libxslt 庫)。--with-http_image_filter_module
:該模塊被做爲圖像過濾器使用,在將圖像投遞到客戶以前進行處理(須要 libgd 庫)。--with-http_geoip_module
:使用該模塊,可以設置各類變量以便在配置文件中的區段使用,基於地理位置查找客戶端 IP 地址(須要 MaxMfind GeoIP 庫和相應的預編譯數據庫文件)。--with-http_sub_module
:該模塊實現了替代過濾,在響應中用一個字符串替代另外一個字符串。--with-http_dav_module
:啓用這個模塊將激活使用 WebDAV 的配置指令。請注意,這個模塊也只在有須要使用的基礎上啓用,若是配置不正確,它可能帶來安全問題。--with-http_flv_module
:若是須要提供 Flash 流媒體視頻文件,那麼該模塊將會提供僞流媒體。--with-http_mp4_module
:這個模塊支持 H.264/AAC 文件僞流媒體。--with-http_gzip_static_module
:當被調用的資源沒有 .gz 結尾格式的文件時,若是想支持發送預壓縮版本的靜態文件,那麼使用該模塊。--with-http_gunzip_module
:對於不支持 gzip 編碼的客戶,該模塊用於爲客戶解壓縮預壓縮內容。--with-http_random_index_module
:若是你想提供從一個目錄中隨機選擇文件的索引文件,那麼這個模塊須要被激活。--with-http_secure_link_module
:該模塊提供了一種機制,它會將一個哈希值連接到一個 URL 中,所以,只有那些使用正確的密碼可以計算連接。--with-http_stub_status_module
:啓用這個模塊後會收集 Nginx 自身的狀態信息。輸出的狀態信息可使用 RRDtool 或相似的東西來繪製成圖。對於網絡加速/代理,可以下配置:安全
./configure --with-http_ssl_module --with-http_realip_module --with-http_geoip_module --with-http_stub_status_module --with-openssl=${BUILD_DIR}/openssl-1.0.1c
對於 Web 服務器:服務器
./configure --with-http_stub_status_module
這兩個配置不一樣之處在於它們面對的客戶,處於 Web 加速時,會考慮到 SSL 請求的終結,也包括處理代理客戶和基於客戶來源決策。處於 Web 服務時,則僅須要提供默認文件訪問能力。cookie
--without-http_charset_module
:該字符集模塊負責設置 Content-Type 響應頭,以及從一個字符集轉換到另外一個字符集。--without-http_gzip_module
:gzip 模塊做爲一個輸出過濾器,在將內容投遞到客戶時對內容進行壓縮。--without-http_ssi_module
:該模塊是一個過濾器,用於處理 SSI 包含。若是啓用 Perl 模塊,那麼額外的 SSI 指令(perl)可用。--without-http_userid_module
:userid 模塊可以使得 Nginx 設置 cookies,用於客戶標識。變量 $uid_set 和 $uid_got 能夠記錄用戶跟蹤。--without-http_access_module
:access 模塊基於 IP 控制訪問 location。--without-http_auth-basic_module
:該模塊經過 Http 基自己份驗證限制訪問。--without-http_autoindex_module
:若是一個目錄中沒有 index 文件,那麼 autoindex 模塊收集這個目錄列出文件。--without-http_geo_module
:該模塊可以讓你基於客戶端 IP 地址設置配置變量,而後根據這些變量的值採起行動。--without-http_map_module
:map 模塊可以讓你映射一個變量到另外一個變量。--without-http_split_clients_module
:該模塊建立用於 A/B 測試的變量。--without-http_referer_module
:該模塊可以讓 Nginx 阻止基於 Referer Http 頭的請求。--without-http_rewrite_module
:經過 rewrite 模塊可以讓你基於變量條件改變 URI。--without-http_proxy_module
:使用 proxy 模塊容許 Nginx 將請求傳遞到其餘服務器或者服務器組。--without-http_fastcgi_module
:FastCGI 模塊可以讓 Nginx 將請求傳遞到 FastCGI 服務器。--without-http_uwsgi_module
:這個模塊可以使得 Nginx 將請求傳遞到 uWSGI 服務器。--without-http_scgi_module
:SCGI 模塊可以讓 Nginx 將請求傳遞到 SCGI 服務器。--without-http_memcached_module
:該模塊可以使得 Nginx 與一個 memcached 服務器進行交互,將響應放置到變量查詢中。--without-http_limit_conn_module
:該模塊可以使得 Nginx 基於某些鍵,一般是 IP 地址,設置鏈接限制。--without-http_limit_req_module
:經過該模塊,Nginx 可以限制每一個用戶的請求率。--without-http_empty_gif_module
:在內存中產生一個 1 像素 * 1 像素的透明 GIF 圖像。--without-http_browser_module
:browser 模塊容許基於 User-Agent Http 請求頭配置,變量的設置基於在該頭中發現的版本。--without-http_upstream_ip_hash_module
:該模塊定義了一組能夠與不一樣的代理模塊結合使用的服務器。