nginx是做什么的?
Nginx是一个高性能的反向代理服务器,现在一般作为我们网站或其他Web服务的第一层代理,用户在浏览器请求首先经过的就是Nginx服务。大部分 Web服务器通常使用 Nginx作为负载均衡器。 它也是一个HTTP缓存服务器,同时也是一个 IMAP/POP3/SMTP 代理服务器。最早开发这个产品的目的之一也是作为邮件代理服务器。目前国内各大门户网站已经部署了Nginx,如新浪、网易、腾讯等;国内几个重要的视频分享网站也部署了Nginx,如六房间、酷6等。
同类产品都有什么?
Lighttpd、apache http server
nginx的优点是什么?
1、并发服务能力强,可大量平行处理:官网测试, 能够支持高达 50,000 个并发连接数的响应。
2、占资源少。
3、支持Keep-alive和管道连接。
4、重新配置和在线升级而无须中断客户的工作进程;
nginx的基本原理?
采用 epoll and kqueue 作为开发模型。(poll-轮询 queue-队列)
//TODO:补充
/***************************** 万能的分隔线 ************************************/
CentOS 7下安装Nginx安装:
一、前提:安装虚拟机
已有虚拟机可忽略这一步。
虚拟机下载:VMware 下载
虚拟机安装: VMware Pro 12 安装 Centos7
二、安装nginx环境
1、安装gcc:yum install gcc-c++
安装nginx需要先将官网下载的源码进行编译,编译依赖gcc环境,如果没有gcc环境,需要安装gcc。
2、安装pcre:yuminstall -y pcre pcre-devel
PCRE(Perl CompatibleRegular Expressions)是一个Perl库,包括 perl 兼容的正则表达式库。nginx的http模块使用pcre来解析正则表达式,所以需要在linux上安装pcre库。
3、安装zlib:yuminstall -y zlib zlib-devel
zlib库提供了很多种压缩和解压缩的方式,nginx使用zlib对http包的内容进行gzip,所以需要在linux上安装zlib库。
4、安装openssl:yuminstall -y openssl openssl-devel
OpenSSL 是一个强大的安全套接字层密码库,囊括主要的密码算法、常用的密钥和证书封装管理功能及SSL协议,并提供丰富的应用程序供测试或其它目的使用。
nginx不仅支持http协议,还支持https(即在ssl协议上传输http),所以需要在linux安装openssl库。
三、安装nginx
1、下载安装包(nginx-1.8.0.tar.gz):wget http://nginx.org/download/nginx-1.8.0.tar.gz
可能遇到的问题:若提示 wget:command not found,还需先安装wget软件包: yum -y install wget ,再下载nginx安装包
第一步也可换种方式:提前下载好,将nginx-1.8.0.tar.gz拷贝至linux服务器。
2、解压:tar -zxvf nginx-1.8.0.tar.gz
3、编译: make
4、安装:make install
四、启动nginx
1、进入nginx的安装目录: cd /usr/local/nginx/sbin/
2、启动nginx:./nginx
3、查询nginx进程: ps aux|grep nginx
五、测试nginx是否安装成功
在浏览器中输入虚拟机的IP地址,出现下图所示欢迎界面即可。
六、停止nginx
1、进入安装目录:cd /usr/local/nginx/sbin
2.1、快速停止:./nginx -s stop
2.2、完全停止:./nginx -s quit (建议使用)
七、重启nginx
1.1、先停止再启动(两条命令): ./nginx -s quit
./nginx
1.2、重新加载配置文件:./nginx -s reload
安装原则:没有消息就是最好的消息,一步步做下来,根据提示信息解决问题,最终定能达成所愿。