微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Nginx之简介及安装1

Nginx简介及安装

Nginx简介

Nginx一个性能的HTTP和反向代理服务器,也是一个IMAP/POP3/SMTP代理服务器,目前国内70%以上公司都在使用Nginx作为自己的web服务器。Nginx特点是占有内存少、并发能力强,事实上Nginx的并发能力确实在同类型的网页服务器中表现较好。

Nginx相对于Apache优点:

  1. 高并发响应性能非常好,官方Nginx处理静态文件并发5w/s
  2. 反向代理性能非常强(可用于负载均衡)
  3. 内存和cpu占用率底(为Apache的1/5--1/10)
  4. 对后端服务有健康检查功能
  5. 支持PHP cgi方式和fastcgi方式
  6. 配置代码简洁且容易上手

Nginx模块

核心模块:HTTP模块、EVENT模块和MAIL模块

基础模块:HTTP Access模块、HTTP FastCGI模块、HTTP Proxy模块和HTTP Rewrite模块

第三方模块:HTTP Upstream Request Hash模块、Notice模块和HTTP Access Key模块

Nginx安装

#环境准备
[root@aliyun ~]# yum install -y vim gcc telnet lrzsz openssl openssl-devel pcre pcre-devel
#下载Nginx源码包
[root@aliyun ~]# wget -c http://Nginx.org/download/Nginx-1.1.18.tar.gz
#创建Nginx用户,并设置为不能登陆
[root@aliyun ~]# useradd -r -s /sbin/nologin Nginx
#解压
[root@aliyun ~]# tar -xzf Nginx-1.1.18.tar.gz 
#进入解压目录,进行预编译
[root@aliyun Nginx-1.1.18]# ls
auto  CHANGES  CHANGES.ru  conf  configure  contrib  html  LICENSE  man  README  src
[root@aliyun Nginx-1.1.18]# ./configure --user=Nginx --group=Nginx --prefix=/usr/local/Nginx --with-http_stub_status_module --with-http_ssl_module && make && make install
#检查Nginx配置文件是否正确,返回ok即正确
[root@aliyun ~]# /usr/local/Nginx/sbin/Nginx -t
Nginx: the configuration file /usr/local/Nginx/conf/Nginx.conf Syntax is ok
Nginx: configuration file /usr/local/Nginx/conf/Nginx.conf test is successful
#启动,测试Nginx
[root@aliyun ~]# /usr/local/Nginx/sbin/Nginx
[root@aliyun ~]# ps -aux | grep Nginx | grep -v grep
root     12091  0.0  0.0  45944  1088 ?        Ss   10:03   0:00 Nginx: master process /usr/local/Nginx/sbin/Nginx
Nginx    12092  0.0  0.0  46348  1636 ?        S    10:03   0:00 Nginx: worker process
#启动成功

常用编译选项说明

Nginx大部分常用模块,编译时,.configure --help--without开头的都是认安装

  • --prefix=PATH:指定Nginx的安装目录,/usr/local/Nginx
  • --conf-path=PATH:设置Nginx.conf配置文件的路径。Nginx允许使用不同的配置文件启动,通过命令行中的-c选项。认为prefix/conf/Nginx.conf
  • --user=name:设置Nginx工作进程的用户。安装完成后,可以随时在Nginx.conf配置文件更改user指令。用户名是nobody。--group=name类似
  • --with-pcre:设置PCRE库的源码路径,如果已通过yum命令安装,使用--wiith-pcre自动找到库文件。使用--with-pcre=PATH时,需要从PCRE网站下载pcre库的源码并解压,剩下的交给Nginx./configuremake完成。perl正则表达式使用在location指令ngx_http_rewrite_module模块中。
  • --with-zlib=PATH:指定zlib的源码解压目录。在认就启用的网络传输压缩模块ngx_http_gzip_module时需要使用zlib
  • --with-http_ssl_module:使用https协议模块。认情况下,该模块没有被构建。前提是openssl与openssl-devel已安装
  • --with-http_stub_status_module:用来监控Nginx的当前状态
  • --with-http_realip_module:通过这个模块允许我们改变客户端请求头中客户端IP地址值(如X-Real-IP或X-Forwarded-For),意义在于能够使得后台服务器记录原始客户端的IP地址。
  • --add-module=PATH:添加第三方外部模块,如Nginx-sticky-module-ng或缓存模块,每次添加新的模块都要重新编译(Tengine可以在新加入module时无需重新编译)

转自:https://www.cnblogs.com/maxtgood/p/9597596.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐