任务二、centos7下编译Nginx

源码编译Nginx

一、关于Nginx

(engine x) 是一个高性能的HTTP和反向代理服务,也是一个IMAP/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网站用户有:百度、京东、新浪、网易、腾讯、淘宝等。

二、编译过程

  1. 导入Nginx的源码包一共有两种方法

    比如说我在/usr/java/Nginx文件夹里面使用命令:

    wget http://nginx.org/download/nginx-1.19.0.tar.gz

    则会将对应的.tar.gz包直接下载到当前文件夹中,不过使用这个命令的前提是虚拟机能联网,当然使用xftp将在(http://nginx.org/download/nginx-1.19.0.tar.gz)下载好.tar.gz包导入到虚拟机中同时也需要虚拟机联网。

  2. 解压Nginx源码包

    tar -xzvf nginx-1.19.0.tar.gz

    这里要注意以下,此时解压出来的文件夹下是没有sbin目录的,我在这里出现了一个问题,在后面进行说明

  3. 配置

    ./configure --prefix=/usr/java/Nginx/nginxPrefix/

    这里要注意一个问题,后面的prefix是指定存放的路径,也就是说这里一定要指定在你的Nginx的安装根目录下设置一个目录存放配置后的文件,之前我多次操作时采用无参配置的时候发现没有配置出来的sbin目录,整个过程无报错,但是却在最后无法启动,重新安装了很多次才发现是这里的问题,这里一定要注意了。
    任务二、centos7下编译Nginx
    出现这个则说明配置成功!之前有过配置openJDK的经验,这里大多数需要的依赖包都已经配置好了,如果缺少依赖包还是跟着报错提示继续添加依赖包即可

  4. 编译

    make

    make install

任务二、centos7下编译Nginx
这时在你的编译目录下就会出现了相应的sbin包

  1. 启动Nginx

    在nginxPrefix目录下

    cd sbin

    输入命令

    ./nginx

    如果没有报错那么你的Ngin已经成功的开启了,这个过程非常快,可能前后下载加编译只需要10分钟即可

    这里的话如果担心没有成功的开启

    那么输入命令

    ps -e | grep nginx

    如果显示

任务二、centos7下编译Nginx

则说明Nginx已经成功开启了!!

如果你是图形界面,那么打开虚拟机上的火狐浏览器

输入http://127.0.0.1/

显示:

任务二、centos7下编译Nginx

此时你的Nginx就可以成功的开启了

  1. 将Nginx配置到环境变量中,就可以在任何场所都能访问到Nginx的命令

    PATH=$PATH:/usr/java/Nginx/nginxPrefix/sbin

    export PATH

    验证一下,输入命令:

    nginx -v

    如果成功显示:

任务二、centos7下编译Nginx

到此为止你的Nginx已经成功编译

**这里要注意的是:**不知道因为什么原因/etc/profile会出现一段时间更新生效,一段时间不生效的情况,在处理时如果发现nginx没有生效的话,那么再次输入命令

source /etc/profile

即可

三、常用操作

因为我们已经将环境变量配置好了,那么当我们在任何路径下都可以直接的通过nginx名调用命令,当然如果没有配置环境变量也不用慌,只要在nginx前跟上所在的路径即可

比如说:

启动nginx

  • ​ 环境变量已配好

    nginx

  • ​ 环境变量未配好

    /usr/java/Nginx/nginxPrefix/sbin/nginx

对应的其他命令也是相同的方法

检查配置文件

nginx -t

优雅的停止,推出前完成已经接受的请求

nginx -s stop

强制停止

nginx -s quit

重启

nginx -s reload

四、搭建静态站点

1、在安装目录中创建一共目录作为存放静态页面的目录

​ 比如说:我这里在安装目录下创建了一个website目录用于存放网页地址

任务二、centos7下编译Nginx

2、导入静态页面的文件夹

3、修改安装目录下的nginxPrefix/conf/nginx.conf
任务二、centos7下编译Nginx

只需要将root 的值改为存放index.html文件夹的路径即可

4、通过localhost:80(也可以通过在网页栏输入ip地址)则可直接访问

任务二、centos7下编译Nginx
任务二、centos7下编译Nginx

创作人:操作系统-王海澎