一个伪linux粉丝的blog

  1. 首页
  2. network
  3. 正文

安装Nginx

29 5 月, 2008 6380点热度 0人点赞 2条评论

预先编译好的安装包

Nginx在一些Linux发行版和BSD的各个变种版本的安装包仓库中都会有,通过各个系统自带的软件包管理方法即可安装。需要注意的是,很多预先编译好的安装包都比较陈旧,大多数情况下还是推荐直接从源码编译。
官方源代码下载
使用源代码进行构建

Nginx 使用 Unix 下常用的 ‘./configure && make && make install’ 过程来编译安装。
configure 脚本确定系统所具有一些特性,特别是 nginx 用来处理连接的方法。然后,它创建 Makefile 文件。
configure 支持下面的选项:
–prefix= - Nginx安装路径。如果没有指定,默认为 /usr/local/nginx。
–sbin-path= - Nginx可执行文件安装路径。只能安装时指定,如果没有指定,默认为/sbin/nginx。
–conf-path= - 在没有给定-c选项下默认的nginx.conf的路径。如果没有指定,默认为/conf/nginx.conf。
–pid-path= - 在nginx.conf中没有指定pid指令的情况下,默认的nginx.pid的路径。如果没有指定,默认为 /logs/nginx.pid。

–lock-path= - nginx.lock文件的路径。
–error-log-path= - 在nginx.conf中没有指定error_log指令的情况下,默认的错误日志的路径。如果没有指定,默认为 /logs/error.log。

–http-log-path= - 在nginx.conf中没有指定access_log指令的情况下,默认的访问日志的路径。如果没有指定,默认为 /logs/access.log。

–user= - 在nginx.conf中没有指定user指令的情况下,默认的nginx使用的用户。如果没有指定,默认为 nobody。
–group= - 在nginx.conf中没有指定user指令的情况下,默认的nginx使用的组。如果没有指定,默认为 nobody。
–builddir=DIR - 指定编译的目录
–with-rtsig_module - 启用 rtsig 模块
–with-select_module –without-select_module - Whether or not to enable the select module. This module is enabled by default if a more suitable method such as kqueue, epoll, rtsig or /dev/poll is not discovered by configure.

//允许或不允许开启SELECT模式,如果 configure 没有找到更合适的模式,比如:kqueue(sun os),epoll (linux kenel 2.6+), rtsig(实时信号)或者/dev/poll(一种类似select的模式,底层实现与SELECT基本相 同,都是采用轮训方法) SELECT模式将是默认安装模式

–with-poll_module –without-poll_module - Whether or not to enable the poll module. This module is enabled by default if a more suitable method such as kqueue, epoll, rtsig or /dev/poll is not discovered by configure.

–with-http_ssl_module - Enable ngx_http_ssl_module. Enables SSL support and the ability to handle HTTPS requests. Requires OpenSSL. On Debian, this is libssl-dev.

//开启HTTP SSL模块,使NGINX可以支持HTTPS请求。这个模块需要已经安装了OPENSSL,在DEBIAN上是libssl

–with-http_realip_module - 启用 ngx_http_realip_module
–with-http_addition_module - 启用 ngx_http_addition_module
–with-http_sub_module - 启用 ngx_http_sub_module
–with-http_dav_module - 启用 ngx_http_dav_module
–with-http_flv_module - 启用 ngx_http_flv_module
–with-http_stub_status_module - 启用 “server status” 页
–without-http_charset_module - 禁用 ngx_http_charset_module
–without-http_gzip_module - 禁用 ngx_http_gzip_module. 如果启用,需要 zlib 。
–without-http_ssi_module - 禁用 ngx_http_ssi_module
–without-http_userid_module - 禁用 ngx_http_userid_module
–without-http_access_module - 禁用 ngx_http_access_module
–without-http_auth_basic_module - 禁用 ngx_http_auth_basic_module
–without-http_autoindex_module - 禁用 ngx_http_autoindex_module
–without-http_geo_module - 禁用 ngx_http_geo_module
–without-http_map_module - 禁用 ngx_http_map_module
–without-http_referer_module - 禁用 ngx_http_referer_module
–without-http_rewrite_module - 禁用 ngx_http_rewrite_module. 如果启用需要 PCRE 。
–without-http_proxy_module - 禁用 ngx_http_proxy_module
–without-http_fastcgi_module - 禁用 ngx_http_fastcgi_module
–without-http_memcached_module - 禁用 ngx_http_memcached_module
–without-http_limit_zone_module - 禁用 ngx_http_limit_zone_module
–without-http_empty_gif_module - 禁用 ngx_http_empty_gif_module
–without-http_browser_module - 禁用 ngx_http_browser_module
–without-http_upstream_ip_hash_module - 禁用 ngx_http_upstream_ip_hash_module
–with-http_perl_module - 启用 ngx_http_perl_module
–with-perl_modules_path=PATH - 指定 perl 模块的路径
–with-perl=PATH - 指定 perl 执行文件的路径
–http-log-path=PATH - Set path to the http access log
–http-client-body-temp-path=PATH - Set path to the http client request body temporary files
–http-proxy-temp-path=PATH - Set path to the http proxy temporary files
–http-fastcgi-temp-path=PATH - Set path to the http fastcgi temporary files
–without-http - 禁用 HTTP server
–with-mail - 启用 IMAP4/POP3/SMTP 代理模块
–with-mail_ssl_module - 启用 ngx_mail_ssl_module
–with-cc=PATH - 指定 C 编译器的路径
–with-cpp=PATH - 指定 C 预处理器的路径
–with-cc-opt=OPTIONS - Additional parameters which will be added to the variable CFLAGS. With the use of the system library PCRE in FreeBSD, it is necessary to indicate –with-cc-opt=”-I /usr/local/include”. If we are using select() and it is necessary to increase the number of file descriptors, then this also can be assigned here: –with-cc-opt=”-D FD_SETSIZE=2048″.

–with-ld-opt=OPTIONS - Additional parameters passed to the linker. With the use of the system library PCRE in FreeBSD, it is necessary to indicate –with-ld-opt=”-L /usr/local/lib”.

–with-cpu-opt=CPU - 为特定的 CPU 编译,有效的值包括:pentium, pentiumpro, pentium3, pentium4, athlon, opteron, amd64, sparc32, sparc64, ppc64

–without-pcre - 禁止 PCRE 库的使用。同时也会禁止 HTTP rewrite 模块。在 “location” 配置指令中的正则表达式也需要 PCRE 。

–with-pcre=DIR - 指定 PCRE 库的源代码的路径。
–with-pcre-opt=OPTIONS - Set additional options for PCRE building.
–with-md5=DIR - Set path to md5 library sources.
–with-md5-opt=OPTIONS - Set additional options for md5 building.
–with-md5-asm - Use md5 assembler sources.
–with-sha1=DIR - Set path to sha1 library sources.
–with-sha1-opt=OPTIONS - Set additional options for sha1 building.
–with-sha1-asm - Use sha1 assembler sources.
–with-zlib=DIR - Set path to zlib library sources.
–with-zlib-opt=OPTIONS - Set additional options for zlib building.
–with-zlib-asm=CPU - Use zlib assembler sources optimized for specified CPU, valid values are: pentium, pentiumpro
–with-openssl=DIR - Set path to OpenSSL library sources
–with-openssl-opt=OPTIONS - Set additional options for OpenSSL building
–with-debug - 启用调试日志
–add-module=PATH - Add in a third-party module found in directory PATH
在不同版本间,选项可能会有些许变化,请总是使用 ./configure –help 命令来检查一下当前的选项列表。
示例 (最好能在同一行):
./configure \ –sbin-path=/usr/local/nginx/nginx \ –conf-path=/usr/local/nginx/nginx.conf \ –pid-path=/usr/local/nginx/nginx.pid \ –with-http_ssl_module \ –with-pcre=../pcre-4.4 \ –with-zlib=../zlib-1.1.3

Ubuntu/debian 上的示例,需要预先安装 libgcrypt11-dev, libpcre3-dev 和 libssl-dev (选择 –with-md5 或 –with-sha1 中的一个, 但不能都选; 在 debian 和 ubuntu 上, 它们应该都指向 /usr/lib)

./configure --with-openssl=/usr/lib/ssl/ --with-md5=/usr/lib

Ubuntu Edgy 的一个 0.5.2 版本的 .deb 包可以在这里下载: nginx_0.5.2-1_i386.deb.

(注: 根据 October 2006 message 的消息,md5 在一个现在不再使用的 http 缓存模块中用到,而 sha1 用在一个未完成的 mysql 库模块,所以它们当前都不是必须的)

相关文章:

  1. nginx升级0.8.52
  2. 基于Ubuntu Nginx Mongrel Mysql部署rails
  3. how to install open source Tengine
  4. 为什么选择Nginx
标签: debian Nginx Ubuntu 编译
最后更新:29 5 月, 2008

wanjie

这个人很懒,什么都没留下

点赞
< 上一篇
下一篇 >

文章评论

  • barnaleikir

    hey this is really great :) i like this one im gonna save it thanksss :)

    1 3 月, 2011
    回复
  • Air Max

    Condign saying thanks settle upon not reasonable be enough, representing the wonderful pellucidity in your writing.

    23 7 月, 2011
    回复
  • razz evil exclaim smile redface biggrin eek confused idea lol mad twisted rolleyes wink cool arrow neutral cry mrgreen drooling persevering
    取消回复

    This site uses Akismet to reduce spam. Learn how your comment data is processed.

    归档
    分类
    • network / 332篇
    • Uncategorized / 116篇
    • unix/linux / 121篇
    • 业界资讯 / 38篇
    • 公司杂事 / 11篇
    • 数码影像 / 12篇
    • 美剧 / 3篇
    • 美图共赏 / 21篇
    • 英语学习 / 3篇
    标签聚合
    浏览器 dreamhost空间 deepseek Nginx docker ssh postgres kubectl openssl VPS jira Google Ubuntu dreamhost debian 网站运营 ldap nexus squid 泰国 wget google-chrome 邮件归档 gitlab d90 Google Voice 天翼live 虚拟主机 k8s kernel

    COPYRIGHT © 2008-2025 wanjie.info. ALL RIGHTS RESERVED.

    Theme Kratos Made By Seaton Jiang