029、Nginx 编译安装以及参数详解
本文最后更新于 260 天前,其中的信息可能已经过时,如有错误请发送邮件到wuxianglongblog@163.com

Nginx 编译安装以及参数详解

Nginx安装

# wget http://nginx.org/download/nginx-1.10.2.tar.gz
# tar xvf nginx-1.10.2.tar.gz -C /usr/local/src
# yum groupinstall "Development too
# yum -y install gcc wget gcc-c++ automake autoconf \
-- libtool libxml2-devel libxslt-devel perl-devel \
--perl-ExtUtils-Embed pcre-devel openssl-devel
# cd /usr/local/src/nginx-1.10.2
# ./configure \
--prefix=/usr/local/nginx \                         指向安装目录
--sbin-path=/usr/sbin/nginx \                       指向(执行)程序文件(nginx)
--conf-path=/etc/nginx/nginx.conf \                 指向配置文件(nginx.conf)
--error-log-path=/var/log/nginx/error.log \         指向错误日志目录
--http-log-path=/var/log/nginx/access.log \
--pid-path=/var/run/nginx.pid \                     指向pid文件(nginx.pid)
--lock-path=/var/run/nginx.lock \                   指向lock文件(nginx.lock)(安装文件锁定,防止安装文件被别人利用,或自己误操作。)
--http-client-body-temp-path=/var/tmp/nginx/client \
--http-proxy-temp-path=/var/tmp/nginx/proxy \
--http-fastcgi-temp-path=/var/tmp/nginx/fcgi \
--http-uwsgi-temp-path=/var/tmp/nginx/uwsgi \
--http-scgi-temp-path=/var/tmp/nginx/scgi \
--user=nginx \          指定程序运行时的非特权用户
--group=nginx \         指定程序运行时的非特权用户组
--with-pcre \           启用pcre库
--with-http_v2_module \
--with-http_ssl_module \        启用ngx_http_ssl_module支持(使支持https请求,需已安装openssl)
--with-http_realip_module \     启用ngx_http_realip_module支持(这个模块允许从请求标头更改客户端的IP地址值,默认为关)
--with-http_addition_module \
--with-http_sub_module \        启用ngx_http_sub_module支持(允许用一些其他文本替换nginx响应中的一些文本)
--with-http_dav_module \        启用ngx_http_dav_module支持(增加PUT,DELETE,MKCOL:创建集合,COPY和MOVE方法)默认情况下为关闭,需编译开启
--with-http_flv_module \        启用ngx_http_flv_module支持(提供寻求内存使用基于时间的偏移量文件)
--with-http_mp4_module \
--with-http_gunzip_module \         禁用ngx_http_gzip_module支持(该模块同-with-http_gzip_static_module功能一样)
--with-http_gzip_static_module \        启用ngx_http_gzip_static_module支持(在线实时压缩输出数据流)
--with-http_random_index_module \       启用ngx_http_random_index_module支持(从目录中随机挑选一个目录索引)
--with-http_secure_link_module \        启用ngx_http_secure_link_module支持(计算和检查要求所需的安全链接网址)
--with-http_stub_status_module \        启用ngx_http_stub_status_module支持(获取nginx自上次启动以来的工作状态)
--with-http_auth_request_module \       禁用ngx_http_auth_basic_module(该模块是可以使用用户名和密码基于http基本认证方法来保护你的站点或其部分内容)
-–without-http_access_module            禁用ngx_http_access_module支持(该模块提供了一个简单的基于主机的访问控制。允许/拒绝基于ip地址)
–-without-http_autoindex_module         禁用disable ngx_http_autoindex_module支持(该模块用于自动生成目录列表,只在ngx_http_index_module模块未找到索引文件时发出请求。)
–-without-http_geo_module               禁用ngx_http_geo_module支持(创建一些变量,其值依赖于客户端的IP地址
-–without-http_map_module                禁用ngx_http_map_module支持(使用任意的键/值对设置配置变量) 
–-without-http_split_clients_module     禁用ngx_http_split_clients_module支持(该模块用来基于某些条件划分用户。条件如:ip地址、报头、cookies等等) 
–-without-http_referer_module            禁用disable ngx_http_referer_module支持(该模块用来过滤请求,拒绝报头中Referer值不正确的请求) 
–-without-http_rewrite_module            禁用ngx_http_rewrite_module支持(该模块允许使用正则表达式改变URI,并且根据变量来转向以及选择配置
–-without-http_proxy_module              禁用ngx_http_proxy_module支持(有关代理服务器)
-–without-http_fastcgi_module            禁用ngx_http_fastcgi_module支持(该模块允许Nginx 与FastCGI 进程交互,并通过传递参数来控制FastCGI 进程工作。 )FastCGI一个常驻型的公共网关接口。
–-without-http_upstream_ip_hash_module   禁用ngx_http_upstream_ip_hash_module支持(该模块用于简单的负载均衡) 
-–with-http_perl_module                  启用ngx_http_perl_module支持(该模块使nginx可以直接使用perl或通过ssi调用perl) 
–-with-perl_modules_path=                设定perl模块路径 
-–with-perl=                             设定perl库文件路径 
-–http-log-path=                    设定access log路径 
-–http-client-body-temp-path=           设定http客户端请求临时文件路径 
-–http-proxy-temp-path=             设定http代理临时文件路径 
-–http-fastcgi-temp-path=           设定http fastcgi临时文件路径 
-–http-uwsgi-temp-path=             设定http uwsgi临时文件路径 
–-http-scgi-temp-path=              设定http scgi临时文件路径 
--without-http                      禁用http server功能 
-–without-http-cache                禁用http cache功能 
-–with-mail                         启用POP3/IMAP4/SMTP代理模块支持 
-–with-mail_ssl_module              启用ngx_mail_ssl_module支持 
-–without-mail_pop3_module          禁用pop3协议
--with-file-aio \
--with-ipv6 \            启用ipv6支持
--with-http_v2_module \
--with-threads \
--with-stream \
-–with-libatomic=               指向libatomic_ops安装目录 
-–with-openssl=                 指向openssl安装目录 
-–with-openssl-opt              在编译时为openssl设置附加参数 
--with-debug                    启用debug日志
--with-stream_ssl_module
--add-module=/home/tinywan/nchan-1.1.3/
# make && make install
# mkdir -pv /var/tmp/nginx/client

启动关闭重置Nginx

  • 启动:直接执行以下命令,nginx就启动了,不需要改任何配置文件
/usr/local/nginx -1.5.1/sbin/nginx
  • 关闭
/usr/local/nginx -1.5.1/sbin/nginx -s stop
  • 重启
/usr/local/nginx -1.5.1/sbin/nginx -s reload

C:\Program Files\Git\bin

nginx root&alias文件路径配置

nginx指定文件路径有两种方式root和alias,这两者的用法区别,使用方法总结了下,方便大家在应用过程中,快速响应。root与alias主要区别在于nginx如何解释location后面的uri,这会使两者分别以不同的方式将请求映射到服务器文件上。

location /abc/ {
    alias /home/html/def/;
}

alias会把location后面配置的路径丢弃掉,把当前匹配到的目录指向到指定的目录。如果一个请求的URI是/abc/a.ttlsa.com/favicon.jgp时,web服务器将会返回服务器上的/home/html/def/a.ttlsa.com/favicon.jgp的文件。

alias注意要点

1.使用alias时,目录名后面一定要加”/”`。

2.alias可以指定任何名称。

3.alias在使用正则匹配时,必须捕捉要匹配的内容并在指定的内容处使用。

4.alias只能位于location块中

谨此笔记,记录过往。凭君阅览,如能收益,莫大奢望。
暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇