Nginx 安装

点击上方蓝字关注我,我们一起学编程
如果觉得内容还不错,请帮忙分享一下
有任何疑问或者想看的内容,欢迎私信

微信搜索《编程笔记本》(codingbook2020),获取更多干活。

今天我们来初识一下 Nginx ,并安装环境。后续我们会花更多的时间去介绍其详细应用。

Nginx 是什么?

Nginx (发音:engine x) 是一个高性能的 HTTP 和反向代理 web 服务器,同时也提供了 MAP/POP3/SMTP 服务。

Nginx 是由伊戈尔·赛索耶夫为俄罗斯访问量第二的 Rambler.ru 站点(俄文:Рамблер)开发的,第一个公开版本 0.1.0 发布于 2004年 10 月 4 日。

其将源代码以类 BSD 许可证的形式发布,因它的稳定性、丰富的功能集、示例配置文件和低系统资源的消耗而闻名。2011 年 6 月 1 日,nginx 1.0.4 发布。

Nginx 是一款轻量级的 Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,在 BSD-like 协议下发行。其特点是占用内存少并发能力强,事实上 nginx 的并发能力在同类型的网页服务器中表现较好,中国大陆使用 nginx 网站用户有:百度、京东、新浪、网易、腾讯、淘宝等。

安装 Nginx

Linux 操作系统

首先我们需要一个内核为 Linux 2.6 及以上版本的操作系统,因为 Linux 2.6 及以上内核才 支持 epoll ,而在 Linux 上使用 select 或 poll 来解决事件的多路复用,是无法解决高并发压力问题的。

我们可以使用 uname -a命令来查询 Linux 内核版本,例如:

jincheng@jincheng-PC:~/Desktop$ uname -a
Linux jincheng-PC 4.15.0-30deepin-generic #31 SMP Fri Nov 30 04:29:02 UTC 2018 x86_64 GNU/Linux

可以看到,版本 4.15.0 是符合我们要求的。

使用 Nginx 的必备软件

如果要使用 Nginx 的常用功能,那么首先需要确保该操作系统上至少安装了如下软件:

  • GCC 编译器
    GCC(GNU Compiler Collection)可用来编译 C 语言程序。Nginx 不会直接提供二进制可
    执行程序,我们可以使用最简单的 apt方式安装 GCC ,例如:apt install gcc。GCC 是必需的编译工具。后面也会用到 G++ 编译器,这里一并安装:apt install g++
  • PCRE 库
    PCRE(Perl Compatible Regular Expressions,Perl 兼容正则表达式)是由 Philip Hazel 开发的函数库,目前为很多软件所使用,该库支持正则表达式。如果我们在配置文件 nginx.conf 里使用了正则表达式,那么在编译 Nginx 时就必须把 PCRE 库编译进 Nginx,因为 Nginx 的 HTTP 模块要靠它来解析正则表达式。当然,如果你确认不会使用正则表达式,就不必安装它。其 apt 安装方式如下:apt install libpcre3 libpcre3-dev
  • zlib 库
    zlib 库用于对 HTTP 包的内容做 gzip 格式的压缩,如果我们在 nginx.conf 里配置了 gzip on ,并指定对于某些类型(content-type)的 HTTP 响应使用 gzip 来进行压缩以减少网络传输量,那么,在编译时就必须把 zlib 编译进 Nginx 。其 apt 安装方式如下:apt install zlib1g-dev
  • OpenSSL 开发库
    如果我们的服务器不只是要支持 HTTP ,还需要在更安全的 SSL 协议上传输 HTTP ,那么就需要拥有 OpenSSL 了。另外,如果我们想使用 MD5、SHA1 等散列函数,那么也需要安装它。其 apt 安装方式如下:apt install openssl libssl-dev

Nginx 是高度自由化的 Web 服务器,它的功能是由许多模块来支持的。而这些模块可根据我们的使用需求来定制,如果某些模块不需要使用则完全不必理会它。同样,如果使用了某个模块,而这个模块使用了一些类似 zlib 或 OpenSSL 等的第三方库,那么就必须先安装这些软件。

安装

  • 从官网(http://nginx.org/en/download.html)下载源码包
  • 解压源码包:tar -zxvf nginx-1.16.1.tar.gz
  • 进入目录 nginx-1.16.1 后执行:
    ./configure
    configure 命令做了大量的“幕后”工作,包括检测操作系统内核和已经安装的软件,参数的解析,中间目录的生成以及根据各种参数生成一些 C 源码文件、Makefile 文件等。
    make
    make 命令根据 configure 命令生成的 Makefile 文件编译 Nginx 工程,并生成目标文件、最终的二进制文件。
    make install
    make install 命令根据 configure 执行时的参数将 Nginx 部署到指定的安装目录,包括相关目录的建立和二进制文件、配置文件的复制。

至此,我们就完成了 Nginx 的安装。

启动 Nginx

安装完成后,我们可以启动 Nginx :

jincheng@jincheng-PC:~/Desktop$ /usr/local/nginx/sbin/nginx 
jincheng@jincheng-PC:~/Desktop$ 

成功启动 Nginx 是没有任何提示的,我们可以通过浏览器访问来验证 Nginx 是否成功启动:

首先获取本设备的 IP 地址:

jincheng@jincheng-PC:~/Desktop$ ifconfig
ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.245.141  netmask 255.255.255.0  broadcast 192.168.245.255
        inet6 fe80::c8ee:7fd0:8682:2505  prefixlen 64  scopeid 0x20<link>
        ether 00:0c:29:bc:82:d4  txqueuelen 1000  (Ethernet)
        RX packets 4866  bytes 5198546 (4.9 MiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 2398  bytes 207118 (202.2 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10<host>
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 0  bytes 0 (0.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

得到 IP 地址为:192.168.245.141 。

接着,我们通过浏览器访问这一地址:

图片

可以看到,Nginx 已经成功安装并启动。

我们可以使用 /usr/local/nginx/sbin/nginx -s stop去关闭 Nginx :

jincheng@jincheng-PC:~/Desktop$ /usr/local/nginx/sbin/nginx -s stop
jincheng@jincheng-PC:~/Desktop$ 

再去打开网页:

图片

可以看到,由于 Nginx 已经关闭,我们无法再去访问该 IP 地址。

还可以使用 /usr/local/nginx/sbin/nginx -s reload去重启 Nginx 。

好啦,到这里我们就介绍完了 Nginx 的安装和简单测试了,后续我们将继续学习 Nginx 的其他知识。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
YOLO高分设计资源源码,详情请查看资源内容中使用说明 YOLO高分设计资源源码,详情请查看资源内容中使用说明 YOLO高分设计资源源码,详情请查看资源内容中使用说明 YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明YOLO高分设计资源源码,详情请查看资源内容中使用说明

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值