Linux下nginx编译安装教程和编译参数详解1.安装pcre
为了⽀持rewrite功能,我们需要安装pcre
复制代码代码如下:
# yum install pcre* //如过你已经装了,请跳过这⼀步
2.安装openssl
需要ssl的⽀持,如果不需要ssl⽀持,请跳过这⼀步
复制代码代码如下:
# yum install openssl*
复制代码代码如下:
yum install zlib zlib-devel
4.安装wget
下载nginx使⽤,如果已经安装,跳过这⼀步
复制代码代码如下:
# yum install wget
1.下载
复制代码代码如下:
wget /download/nginx-1.7.
2.解压
复制代码代码如下:
tar -zxvf nginx-1.7.
3.编译和安装
执⾏如下命令:
复制代码代码如下:
# cd nginx-1.7.0
# ./configure --prefix=/usr/local/nginx-1.7.0 \
--with-http_ssl_module --with-http_spdy_module \
--with-http_stub_status_module --with-pcre
–with-http_stub_status_module:⽀持nginx状态查询
–with-http_ssl_module:⽀持https
–with-http_spdy_module:⽀持google的spdy,想了解请百度spdy,这个必须有ssl的⽀持
–with-pcre:为了⽀持rewrite重写功能,必须制定pcre
最后输出如下内容,表⽰configure OK了。
复制代码代码如下:
checking for zlib library ... found
creating objs/Makefile
Configuration summary
+ using system PCRE library
+ using system OpenSSL library
+ md5: using OpenSSL library
+ sha1: using OpenSSL library
+ using system zlib library
nginx path prefix: "/usr/local/nginx-1.7.0"
nginx binary file: "/usr/local/nginx-1.7.0/sbin/nginx"
nginx configuration prefix: "/usr/local/nginx-1.7.0/conf"
nginx configuration file: "/usr/local/nginx-1.7.0/f"
nginx pid file: "/usr/local/nginx-1.7.0/logs/nginx.pid"
nginx error log file: "/usr/local/nginx-1.7.0/logs/error.log"
nginx http access log file: "/usr/local/nginx-1.7.0/logs/access.log"
nginx http client request body temporary files: "client_body_temp"
nginx http proxy temporary files: "proxy_temp"
nginx http fastcgi temporary files: "fastcgi_temp"
nginx http uwsgi temporary files: "uwsgi_temp"
nginx http scgi temporary files: "scgi_temp"
# make //确定你的服务器有安装make,如果没有安装请执⾏yum install make
# make install
启动:直接执⾏以下命令,nginx就启动了,不需要改任何配置⽂件,nginx配置多域名虚拟主机请参考后续⽂章.
复制代码代码如下:
/usr/local/nginx-1.7.0/sbin/nginx
试试访问:直接使⽤curl命令来读取web信息
复制代码代码如下:
[root@ns conf]
# curl -s localhost | grep nginx
nginx.
关闭:
复制代码代码如下:
/usr/local/nginx-1.7.0/sbin/nginx -s stop
重置:当你有修改配置⽂件的时候,只需要reload以下即可
复制代码代码如下:
/usr/local/nginx-1.7.0/sbin/nginx -s reload
整个nginx的安装就到这⾥结束了。
复制代码代码如下:
–prefix= 指向安装⽬录
–sbin-path 指向(执⾏)程序⽂件(nginx)
–conf-path= 指向配置⽂件(f)
–error-log-path= 指向错误⽇志⽬录
–pid-path= 指向pid⽂件(nginx.pid)
–lock-path= 指向lock⽂件(nginx.lock)(安装⽂件锁定,防⽌安装⽂件被别⼈利⽤,或⾃⼰误操作。)
–user= 指定程序运⾏时的⾮特权⽤户
–group= 指定程序运⾏时的⾮特权⽤户组
–builddir= 指向编译⽬录
–with-rtsig_module 启⽤rtsig模块⽀持(实时信号)
–with-select_module 启⽤select模块⽀持(⼀种轮询模式,不推荐在⾼载环境下使⽤)禁⽤:–without-select_module
–with-poll_module 启⽤poll模块⽀持(功能与select相同,与select特性相同,为⼀种轮询模式,不推荐在⾼载环境下使⽤)–with-file-aio 启⽤file aio⽀持(⼀种APL⽂件传输格式)
–with-ipv6 启⽤ipv6⽀持
–with-http_ssl_module 启⽤ngx_http_ssl_module⽀持(使⽀持https请求,需已安装openssl)
–with-http_realip_module 启⽤ngx_http_realip_module⽀持(这个模块允许从请求标头更改客户端的IP地址值,默认为关)–with-http_addition_module 启⽤ngx_http_addition_module⽀持(作为⼀个输出过滤器,⽀持不完全缓冲,分部分响应请求)
–with-http_xslt_module 启⽤ngx_http_xslt_module⽀持(过滤转换XML请求)
–with-http_image_filter_module 启⽤ngx_http_image_filter_module⽀持(传输JPEG/GIF/PNG 图⽚的⼀个过滤器)(默认为不启⽤。gd库要⽤到)
–with-http_geoip_module 启⽤ngx_http_geoip_module⽀持(该模块创建基于与MaxMind GeoIP⼆进制⽂件相配的客户端IP
地址的ngx_http_geoip_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_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_degradation_module  启⽤ngx_http_degradation_module⽀持(允许在内存不⾜的情况下返回204或444码)
–with-http_stub_status_module 启⽤ngx_http_stub_status_module⽀持(获取nginx⾃上次启动以来的⼯作状态)
–without-http_charset_module 禁⽤ngx_http_charset_module⽀持(重新编码web页⾯,但只能是⼀个⽅向–服务器端到客户端,并且只有⼀个字节的编码可以被重新编码)
–without-http_gzip_module 禁⽤ngx_http_gzip_module⽀持(该模块同-with-http_gzip_static_module功能⼀样)
–without-http_ssi_module 禁⽤ngx_http_ssi_module⽀持(该模块提供了⼀个在输⼊端处理处理服务器包含⽂件(SSI)的过滤器,⽬前⽀持SSI命令的列表是不完整的)
linux教程第五版pdf下载–without-http_userid_module 禁⽤ngx_http_userid_module⽀持(该模块⽤来处理⽤来确定客户端后续请求的cookies)
–without-http_access_module 禁⽤ngx_http_access_module⽀持(该模块提供了⼀个简单的基于主机的访问控制。允许/拒绝基于ip地址)
–without-http_auth_basic_module禁⽤ngx_http_auth_basic_module(该模块是可以使⽤⽤户名和密码基于http基本认证⽅法来保护你的站点或其部分内容)
–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,并且根据变量来转向以及选择配置。如果在server级别设置该选项,那么他们将在 location之前⽣效。如果在location还有更进⼀步的重写规则,location部分的规则依然会被执⾏。如果这个URI重写是因为location部分的规则造成的,那么 location部分会再次被执⾏作为新的URI。这个循环会执⾏10次,然后Nginx会返回⼀个500错误。)
–without-http_proxy_module 禁⽤ngx_http_proxy_module⽀持(有关代理服务器)
–without-http_fastcgi_module 禁⽤ngx_http_fastcgi_module⽀持(该模块允许Nginx 与FastCGI 进程交互,并通过传递参数来控制FastCGI 进程⼯作。)FastCGI⼀个常驻型的公共⽹关接⼝。
–without-http_uwsgi_module 禁⽤ngx_http_uwsgi_module⽀持(该模块⽤来医⽤uwsgi协议,uWSGI服务器相关)
–without-http_scgi_module 禁⽤ngx_http_scgi_module⽀持(该模块⽤来启⽤SCGI协议⽀持,SCGI协议是CGI协议的替代。它是⼀种应⽤程序与HTTP服务接⼝标准。它有些像FastCGI但他的设计更容易实现。)
–without-http_memcached_module 禁⽤ngx_http_memcached_module⽀持(该模块⽤来提供简单的缓存,以提⾼系统效率)
-without-http_limit_zone_module 禁⽤ngx_http_limit_zone_module⽀持(该模块可以针对条件,进⾏会话的并发连接数控制)
–without-http_limit_req_module 禁⽤ngx_http_limit_req_module⽀持(该模块允许你对于⼀个地址进⾏请求数量的限制⽤⼀个给定的session或⼀个特定的事件)
–without-http_empty_gif_module 禁⽤ngx_http_empty_gif_module⽀持(该模块在内存中常驻了⼀个1*1的透明GIF图像,可以被⾮常快速的调⽤)
–without-http_browser_module 禁⽤ngx_http_browser_module⽀持(该模块⽤来创建依赖于请求报头的值。如果浏览器为modern ,则$modern_browser等于modern_browser_value指令分配的值;如果浏览器为old,则$ancient_browser等于ancient_browser_value指令分配的值;如果浏览器为 MSIE中的任意版本,则 $msie等于1)
–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协议(POP3即邮局协议的第3个版本,它是规定个⼈计算机如何连接到互联⽹上的邮件服务器进⾏收发邮件的协议。是因特⽹电⼦邮件的第⼀个离线协议标准,POP3协议允许⽤户从服务器上把邮件存储到本地主机上,同时根据客户端的操作删除或保存在邮件服务器上的邮件。POP3协议是TCP/IP协议族中的⼀员,主要⽤于⽀持使⽤客户端远程管理在服务器上的电⼦邮件)
–without-mail_imap_module 禁⽤imap协议(⼀种邮件获取协议。它的主要作⽤是邮件客户端可以通过这种协议从邮件服务器上获取邮件的信息,下载邮件等。IMAP协议运⾏在TCP/IP协议之上,使⽤的端⼝是143。它与POP3协议的主要区别是⽤户可以不⽤把所有的邮件全部下载,可以通过客户端直接对服务器上的邮件进⾏操作。)
–without-mail_smtp_module 禁⽤smtp协议(SMTP即简单邮件传输协议,它是⼀组⽤于由源地址到⽬
的地址传送邮件的规则,由它来控制信件的中转⽅式。SMTP协议属于TCP/IP协议族,它帮助每台计算机在发送或中转信件时到下⼀个⽬的地。)–with-google_perftools_module 启⽤ngx_google_perftools_module⽀持(调试⽤,剖析程序性能瓶颈)
–with-cpp_test_module 启⽤ngx_cpp_test_module⽀持
–add-module= 启⽤外部模块⽀持
–with-cc= 指向C编译器路径
–with-cpp= 指向C预处理路径
–with-cc-opt= 设置C编译器参数(PCRE库,需要指定–with-cc-opt=”-I /usr/local/include”,如果使⽤select()函数则需要同时增加⽂件描述符数量,可以通过–with-cc- opt=”-D FD_SETSIZE=2048”指定。)
–with-ld-opt= 设置连接⽂件参数。(PCRE库,需要指定–with-ld-opt=”-L /usr/local/lib”。)
–with-cpu-opt= 指定编译的CPU,可⽤的值为: pentium, pentiumpro, pentium3, pentium4, athlon, opteron, amd64, sparc32, sparc64, ppc64
–without-pcre 禁⽤pcre库
–with-pcre 启⽤pcre库
–with-pcre= 指向pcre库⽂件⽬录
–with-pcre-opt= 在编译时为pcre库设置附加参数
–with-md5= 指向md5库⽂件⽬录(消息摘要算法第五版,⽤以提供消息的完整性保护)
–with-md5-opt= 在编译时为md5库设置附加参数
–with-md5-asm 使⽤md5汇编源
–with-sha1= 指向sha1库⽬录(数字签名算法,主要⽤于数字签名)
–with-sha1-opt= 在编译时为sha1库设置附加参数
–with-sha1-asm 使⽤sha1汇编源
–with-zlib= 指向zlib库⽬录
–with-zlib-opt= 在编译时为zlib设置附加参数
–with-zlib-asm= 为指定的CPU使⽤zlib汇编源进⾏优化,CPU类型为pentium, pentiumpro
–with-libatomic 为原⼦内存的更新操作的实现提供⼀个架构
–with-libatomic= 指向libatomic_ops安装⽬录
–with-openssl= 指向openssl安装⽬录
–with-openssl-opt 在编译时为openssl设置附加参数
–with-debug 启⽤debug⽇志

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。