什么是Nginx?
Nginx (engine x) 是一个使用c语言开发的高性能的http服务器及反向代理服务器。,也是一个IMAP/POP3/SMTP服务。Nginx是由伊戈尔·赛索耶夫为俄罗斯访问量第二的Rambler.ru站点(俄文:Рамблер)开发的,第一个公开版本0.1.0发布于2004年10月4日。官方测试nginx能够支支撑5万并发链接,并且cpu、内存等资源消耗却非常低,运行非常稳定。
其将源代码以类BSD许可证的形式发布,因它的稳定性、丰富的功能集、示例配置文件和低系统资源的消耗而闻名。2011年6月1日,nginx 1.0.4发布。
Nginx是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,并在一个BSD-like 协议下发行。其特点是占有内存少,并发能力强,事实上nginx的并发能力确实在同类型的网页服务器中表现较好,中国大陆使用nginx网站用户有:百度、京东、新浪、网易、腾讯、淘宝等。
Nginx的应用场景
1、 http服务器。Nginx是一个http服务可以独立提供http服务。可以做网页静态服务器。
2、 虚拟主机。可以实现在一台服务器虚拟出多个网站。例如个人网站使用的虚拟主机。
基于端口的,不同的端口
基于域名的,不同域名
3、 反向代理,负载均衡。当网站的访问量达到一定程度后,单台服务器不能满足用户的请求时,需要用多台服务器集群可以使用nginx做反向代理。并且多台服务器可以平均分担负载,不会因为某台服务器负载高宕机而某台服务器闲置的情况。
准备工作
[root@civic ~]# cat /etc/redhat-release
CentOS Linux release 7.5.1804 (Core)
准备所需要安装的依赖
https://download.csdn.net/download/jiaomi2665/23356789
我把所需要的rpm放在了/opt/rpm目录下
[root@civic rpm]# ll
total 50364
-rw-r--r--. 1 root root 6230552 Sep 16 22:58 cpp-4.8.5-44.el7.x86_64.rpm
-rw-r--r--. 1 root root 16963328 Sep 16 22:58 gcc-4.8.5-44.el7.x86_64.rpm
-rw-r--r--. 1 root root 3817176 Sep 16 22:58 glibc-2.17-324.el7_9.x86_64.rpm
-rw-r--r--. 1 root root 12059644 Sep 16 22:58 glibc-common-2.17-324.el7_9.x86_64.rpm
-rw-r--r--. 1 root root 1128268 Sep 16 22:58 glibc-devel-2.17-324.el7_9.x86_64.rpm
-rw-r--r--. 1 root root 707244 Sep 16 22:58 glibc-headers-2.17-324.el7_9.x86_64.rpm
-rw-r--r--. 1 root root 9478892 Sep 16 22:58 kernel-headers-3.10.0-1160.42.2.el7.x86_64.rpm
-rw-r--r--. 1 root root 105308 Sep 16 22:58 libgcc-4.8.5-44.el7.x86_64.rpm
-rw-r--r--. 1 root root 162384 Sep 16 22:58 libgomp-4.8.5-44.el7.x86_64.rpm
-rw-r--r--. 1 root root 51732 Sep 16 22:58 libmpc-1.0.1-3.el7.x86_64.rpm
-rw-r--r--. 1 root root 208316 Sep 16 22:58 mpfr-3.1.1-4.el7.x86_64.rpm
-rw-r--r--. 1 root root 491272 Sep 16 22:58 pcre-devel-8.32-17.el7.x86_64.rpm
-rw-r--r--. 1 root root 92068 Sep 16 22:58 zlib-1.2.7-19.el7_9.x86_64.rpm
-rw-r--r--. 1 root root 51256 Sep 16 22:58 zlib-devel-1.2.7-19.el7_9.x86_64.rpm
[root@civic rpm]# rpm -ivh *.rpm --nodeps --force
warning: cpp-4.8.5-44.el7.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID f4a80eb5: NOKEY
Preparing... ################################# [100%]
Updating / installing...
1:libgcc-4.8.5-44.el7 ################################# [ 7%]
2:glibc-common-2.17-324.el7_9 ################################# [ 14%]
3:glibc-2.17-324.el7_9 warning: /etc/nsswitch.conf created as /etc/nsswitch.conf.rpmnew
################################# [ 21%]
4:mpfr-3.1.1-4.el7 ################################# [ 29%]
5:zlib-1.2.7-19.el7_9 ################################# [ 36%]
6:libmpc-1.0.1-3.el7 ################################# [ 43%]
7:cpp-4.8.5-44.el7 ################################# [ 50%]
8:libgomp-4.8.5-44.el7 ################################# [ 57%]
9:kernel-headers-3.10.0-1160.42.2.e################################# [ 64%]
10:glibc-headers-2.17-324.el7_9 ################################# [ 71%]
11:glibc-devel-2.17-324.el7_9 ################################# [ 79%]
12:gcc-4.8.5-44.el7 ################################# [ 86%]
13:zlib-devel-1.2.7-19.el7_9 ################################# [ 93%]
14:pcre-devel-8.32-17.el7 ################################# [100%]
rpm二进制安装包也放在了/opt目录
解压二进制安装包
[root@civic opt]# tar -zxvf nginx-1.18.0.tar.gz
[root@civic opt]# useradd -s /sbin/nologin -M nginx #创建一个nginx用户
id nginx #看nginx的id信息
uid=1000(nginx) gid=1000(nginx) groups=1000(nginx)
[root@civic nginx-1.18.0]#./configure --prefix=/usr/local/nginx--user=nginx --group=nginx #配置文件以及用户等信息,要在nginx目录下面执行
[root@civic nginx-1.18.0]# make && make install #编译安装
[root@civic nginx-1.18.0]# /usr/local/nginx--user\=nginx/sbin/nginx #启动一下应用
[root@civic nginx-1.18.0]# ss -tannml | grep 80 # 看一下80端口
这个时候登陆IP地址就可以显示了