什么是Nginx?
Nginx ("engine x") 是一个高性能的 HTTP 和 反向代理 服务器,也是一个 IMAP/POP3/SMTP 代理服务器,在高连接并发的情况下Nginx 是 Apache 服务器不错的替代品.其特点是占有内存少,并发能力强,事实上nginx的并发能力确实在同类型的网页服务器中表现较好.目前中国大陆使用nginx网站用户有:新浪、网易、 腾讯,另外知名的微网志Plurk也使用nginx。
Nginx 作为 负载均衡 服务器:
Nginx 既可以在内部直接支持 Rails 和 PHP 程序对外进行服务,也可以支持作为 HTTP 代理服务器对外进行服务。 Nginx 采用 C 进行编写, 不论是系统资源开销还是 CPU 使用效率都比 Perlbal 要好很多。作为邮件代理服务器:
Nginx 同时也是一个非常优秀的邮件代理服务器(最早开发这个产品的目的之一也是作为邮件代理服务器), Last.fm 描述了成功并且美妙的使用经验。Nginx 是一个安装非常简单,配置文件非常简洁(还能够支持perl语法), Bugs非常少的服务器: Nginx 启动特别容易,并且几乎可以做到 7*24 不间断运行,即使运行数个月也不需要重新启动。 你还能够不间断服务的情况下进行软件版本的升级。
安装所需环境
Nginx 是 C语言 开发,建议在 Linux 上运行,当然,也可以安装 Windows 版本,本篇则使用 CentOS 7 作为安装环境。
1.安装依赖包(gcc zlib zlib-devel pcre-devel openssl openssl-devel)
//1.gcc:安装 nginx 需要先将官网下载的源码进行编译,编译依赖 gcc 环境
yum install gcc
//2.pcre 是一个Perl库,包括 perl 兼容的正则表达式库。nginx 的 http 模块使用 pcre 来解析正则表达式,所以需要在 linux 上安装 pcre 库,
// pcre-devel 是使用 pcre 开发的一个二次开发库。nginx也需要此库
yum -y install pcre pcre-devel
//zlib 库提供了很多种压缩和解压缩的方式, nginx 使用 zlib 对 http 包的内容进行 gzip ,所以需要在 Centos 上安装 zlib 库。
yum -y install zlib zlib-devel
//openssl是一个强大的安全套接字层密码库,囊括主要的密码算法、常用的密钥和证书封装管理功能及 SSL 协议,并提供丰富的应用程序供测试或其它目的使用。
//nginx 不仅支持 http 协议,还支持 https(即在ssl协议上传输http),所以需要在 Centos 安装 OpenSSL 库。
yum -y install openssl openssl-devel
2.下载并解压安装包
//创建一个文件夹
cd /root
//下载tar包
wget http://nginx.org/download/nginx-1.16.0.tar.gz
tar -xvf nginx-1.16.0.tar.gz
3.安装nginx
//进入nginx目录
cd cd /root/nginx-1.16.0
//执行命令
./configure
//执行make命令
make
//执行make install命令
make install
当执行./configure 出现以下错误的时候的解决方法:
// 1.出现./configure: error: the HTTP rewrite module requires the PCRE library.错误时
yum -y install pcre-devel
// 2.出现./configure: error:the HTTP gzip module requires the zlib library.错误时
yum install -y zlib-devel
4.启动nginx
cd /usr/local/nginx/sbin/
./nginx -c /usr/local/nginx/conf/nginx.conf
在浏览器中访问服务器的公网地址如:148.70.25.38 出现下面界面表示安装成功:
5.查看到nginx进程的运行情况
ps aux|grep nginx
6.nginx服务器的停止方式:
方式一:先查出nginx进程id再使用kill命令强制杀掉进程。
cd /usr/local/nginx/sbin
./nginx -s stop
方式二(推荐):待nginx进程处理任务完毕进行停止。
cd /usr/local/nginx/sbin
./nginx -s quit
注:如果对你有帮助的,请帮我点个“赞”,如果有写的不好的,或有改进的地方,欢迎留言区评论,如果情况属实,我会优化改进该文章-----张小桀