从源代码编译应用程序时通常有三个步骤:配置,编译和安装。 配置步骤允许您选择一些在程序编译后无法编辑的选项,因为它对程序二进制文件有直接影响。 因此,这是一个非常重要的阶段,你需要仔细选择,如果你想避免后面的麻烦,如缺乏一个特定的模块或配置文件位于一个随机文件夹等。

简单安装

<br\>
如果由于某种原因,您不想使安装这么麻烦(例如用于测试目的或仅仅因为您以后会重新编译程序),则可以直接使用不带参数的configure命令。 执行以下三个命令来编译和安装Nginx的工作版本,从configure命令开始:

  1. [alex@example.com nginx-1.8.0]# ./configure

运行此命令需要比较长的时间来进行验证过程,以确保您的系统包含所有必需的组件。 如果配置过程失败,请再次检查安装依赖部分,因为它是错误的最常见原因。 有关命令失败原因的信息,您还可以参考objs/autoconf.err文件,其中提供了更详细的报告。 make命令将编译应用程序。 只要配置正确,此步骤不应出现任何错误。

  1. [alex@example.com nginx-1.8.0]# make
  2. [root@example.com nginx-1.8.0]# make install

这最后一步将编译文件以及其他资源复制到安装目录,默认是/usr/local/nginx

Path选项

<br\>

参数 用途 默认值
–prefix=… Nginx安装的基础目录 /usr/local/nginx
–sbin-path=… Nginx二进制安装目录 /sbin/nginx.
–conf-path=… 主配置文件安装位置 /conf/nginx.conf.
–error-log-path=… 错误日志位置 /logs/error.log.
–pid-path=… Nginx pid文件路径,可以在配置文件指定 /logs/nginx.pid.
–lock-path=… 锁文件位置 /logs/nginx.lock.
–with-perl_
modules_path=…
Perl模块位置  
–with-perl=… Perl二进制文件路径  
–http-log-
path=…
访问日志路径,可以在配置文件指定 /logs/access.log.
–http-client-
body-temp-path=…
存放由客户端请求生成的临时文件路径 /client_body_temp.
–http-proxy-
temp-path=…
proxy产生的临时文件路径 /proxy_temp.
–http-fastcgi-
temp-path=…
–http-uwsgi-
temp-path=…
–http-scgi-
temp-path=…
由HTTP,FastCGI, uWSGI和SCGI模块产生的临时文件路径 / fastcgi_temp, /uwsgi_temp, and/scgi_temp.

依赖选项

<br\>
依赖以库和二进制文件的形式出现。 现在,它们应该已经全部安装在您的系统上了。 但是,即使它们存在于您的系统上,也有可能出现配置脚本无法找到它们的情况。 原因可能有所不同,例如,如果它们安装在非标准目录中。
为了解决这些问题,您可以使用以下选项来指定依赖的路径(其他依赖相关选项已组合在一起):

编译选项 描述
–with-cc=… 指定C编译器的备用位置。
–with-cpp=… 指定C预处理器的备用位置。
–with-cc-opt=… 定义要传递到C编译器命令行的其他选项。
–with-ld-opt=… 定义要传递到C链接器命令行的其他选项。
–with-cpu-opt=… 在以下值中指定不同的目标处理器体系结构:pentium,pentiumpro,pentium3,pentium4,athlon,opteron,sparc32,sparc64和ppc64。
PCRE选项 描述
–without-pcre 禁用PCRE库的使用。 不建议使用此设置,因为它将删除对正则表达式的支持,从而禁用Rewrite模块。
–with-pcre 强制使用PCRE库。
–with-pcre=… 允许您指定PCRE库源代码的路径。
–with-pcre-opt=… 构建PCRE库的其他选项。
–with-pcre-jit=… 构建PCRE与JIT编译的支持。
MD5选项 描述
–with-md5=… 指定MD5库源的路径。
–with-md5-opt=… 用于构建MD5库的其他选项。
–with-md5-asm 为MD5库指定汇编源。
SHA1选项 描述
–with-sha1=… 指定SHA1库源的路径。
–with-sha1-opt=… 构建SHA1库的其他选项。
–with-sha1-asm 为SHA1库指定汇编器源。
zlib选项 描述
–with-zlib=… 指定zlib library源的路径。
–with-zlib-opt=… 用于构建zlib库的其他选项。
–with-zlib-asm=… 为zlib库指定汇编器源。
OpenSSL选项 描述
–with-openssl=… 指定OpenSSL库源的路径。
–with-openssl-opt=… 用于构建OpenSSL库的其他选项。

模块选项

<br\>
在编译程序之前,需要指定要安装的模块。 有些是默认启用的,有些需要手动启用,如下表所示。

默认启用的模块

以下参数允许您禁用默认情况下启用的模块:
–without-http_charset_module
–without-http_gzip_module
–without-http_ssi_module
–without-http_userid_module
–without-http_access_module
–without-http_access_module
–without-http_autoindex_module
–without-http_geo_module
–without-http_map_module
–without-http_referer_module
–without-http_rewrite_module
–without-http_proxy_module
–without-http_fastcgi_module
–without-http_uwsgi_module
–without-http_scgi_module
–without-http_memcached_module
–without-http_limit_conn_module
–without-http_limit_req_module
–without-http_empty_gif_module
–without-http_browser_module
–without-http_upstream_ip_hash_module
–without-http_upstream_least_conn_module
–without-http_split_clients_module

默认禁用的模块

以下参数允许您启用默认禁用的模块:
–with-http_ssl_module
–with-http_realip_module
–with-http_addition_module
–with-http_xslt_module
–with-http_image_filter_module
–with-http_geoip_module
–with-http_sub_module
–with-http_dav_module
–with-http_flv_module
–with-http_mp4_module
–with-http_gzip_static_module
–with-http_random_index_module
–with-http_secure_link_module
–with-http_stub_status_module
–with-google_perftools_module
–with-http_degradation_module
–with-http_perl_module
–with-http_spdy_module
–with-http_gunzip_module
–with-http_auth_request_module

Nginx使用教程(一):Nginx编译参数详解的更多相关文章

  1. Linux下nginx编译安装教程和编译参数详解

    这篇文章主要介绍了Linux下nginx编译安装教程和编译参数详解,需要的朋友可以参考下 一.必要软件准备1.安装pcre 为了支持rewrite功能,我们需要安装pcre 复制代码代码如下: # y ...

  2. 【转】 linux 安装nginx及编译参数详解

    版权声明:本文为博主原创文章,未经博主允许不得转载. 从官网下载一个nginx 的tar.gz 版. 安装方式使用make 安装 第一步:解压 tar -zxvf  nginx-1.7.4.tar.g ...

  3. Windows下Nginx Virtual Host多站点配置详解

    Windows下Nginx Virtual Host多站点配置详解 此教程适用于Windows系统已经配置好Nginx+Php+Mysql环境的同学. 如果您还未搭建WNMP环境,请查看 window ...

  4. Nginx 常用全局变量 及Rewrite规则详解

    每次都很容易忘记Nginx的变量,下面列出来了一些常用 $remote_addr //获取客户端ip $binary_remote_addr //客户端ip(二进制) $remote_port //客 ...

  5. Nginx+Tomcat的服务器端环境配置详解

    这篇文章主要介绍了Nginx+Tomcat的服务器端环境配置详解,包括Nginx与Tomcat的监控开启方法,需要的朋友可以参考下 Nginx+tomcat是目前主流的Javaweb架构,如何让ngi ...

  6. nginx源码分析线程池详解

    nginx源码分析线程池详解 一.前言     nginx是采用多进程模型,master和worker之间主要通过pipe管道的方式进行通信,多进程的优势就在于各个进程互不影响.但是经常会有人问道,n ...

  7. Android Studio系列教程五--Gradle命令详解与导入第三方包

    Android Studio系列教程五--Gradle命令详解与导入第三方包 2015 年 01 月 05 日 DevTools 本文为个人原创,欢迎转载,但请务必在明显位置注明出处!http://s ...

  8. 七牛云存储Python SDK使用教程 - 上传策略详解

    文 七牛云存储Python SDK使用教程 - 上传策略详解 七牛云存储 python-sdk 七牛云存储教程 jemygraw 2015年01月04日发布 推荐 1 推荐 收藏 2 收藏,2.7k  ...

  9. [js高手之路] es6系列教程 - 对象功能扩展详解

    第一:字面量对象的方法,支持缩写形式 //es6之前,这么写 var User = { name : 'ghostwu', showName : function(){ return this.nam ...

  10. Android ADB命令教程二——ADB命令详解

    Android ADB命令教程二——ADB命令详解 转载▼ 原文链接:http://www.tbk.ren/article/249.html       我们使用 adb -h 来看看,adb命令里面 ...

随机推荐

  1. 修复Nginx 502错误:upstream sent too big header while reading response header from upstream

    原文出处:https://www.cnblogs.com/jpfss/p/10237463.html 便于以后参考我复制了过来! cookies的值超出了范围我是说 看看了一下日志 错误502 ups ...

  2. HashMap中ConcurrentModificationException异常解读

    HashMap是一个线程不安全的集合,如果在遍历的过程中同时对该集合进行修改操作,例如put,add,remove等,会抛出java.util.ConcurrentModificationExcept ...

  3. FFmpeg封装格式处理2-解复用例程

    本文为作者原创,转载请注明出处:https://www.cnblogs.com/leisure_chn/p/10506642.html FFmpeg封装格式处理相关内容分为如下几篇文章: [1]. F ...

  4. 深入浅出 JVM GC(2)

    # 前言 在 深入浅出 JVM GC(1) 中,限于上篇文章的篇幅,我们留下了一个问题 : 如何回收? 这篇文章将重点讲述这个问题. 在上篇文章中,我们也列出了一些大纲,今天我们就按照那个大纲来逐个讲 ...

  5. Java语言的简介

    Java语言的由来 Java是由Sun Microsystems公司推出的Java面向对象程序设计语言(以下简称Java语言)和Java平台的总称.由James Gosling和同事们共同研发,并在1 ...

  6. 【开发工具之eclipse】8、The word is not correctly spelled。强迫症看着很难受

    eclipse出现了极其让我郁闷的错误,"The word is not correctly spelled" 我讨教过一些朋友以后,还是没有得到答案,我就纳闷了.然后我继续将代码 ...

  7. JavaSE 软件工程师 认证考试试卷3

    JavaSE 软件工程师 认证考试试卷   笔试   考试时间150分钟 总分 100分   姓    名_______________________ 身份证号___________________ ...

  8. python爬虫入门---第一篇:获取某一网页所有超链接

    这是一个通过使用requests和BeautifulSoup库,简单爬取网站的所有超链接的小爬虫.有任何问题欢迎留言讨论. import requests from bs4 import Beauti ...

  9. Linux 下的 PostgreSQL 数据库+文件通用自动备份脚本

    由于 Odoo(原名 OpenERP)自 8.0 以来会生成 CSS,并把附件存储在文件系统中,因此以前单纯备份数据库的脚本已经不够用了.出于实际部署的考虑,我专门写了个较为通用的 Odoo 备份脚本 ...

  10. “京东金融”主页效果 RecyclerView联动

    先上效果图吧: 第一个想到的实现方式是上面使用horizontalScrollview,下面使用Viewpager,经过尝试之后发现二者API有限,不能达到理想效果.几经折腾,最后上下都使用了自定义的 ...