Nginx 源码编译安装

下载源码包

wget https://nginx.org/download/nginx-1.13.3.tar.gz

解压进入目录

tar xvf nginx-1.13.3.tar.g
cd nginx-1.13.3
./configure
make
sudo make install

如果这个过程可能会提示某些类库缺失, 可以安装后, 重新从./configure 开始执行

默认的nginx命令安装在/usr/local/nginx/sbin/nginx, 该目录并不在我的系统$PATH中, 所以直接的nginx 命令是会找不到的

做个软链接到你的$PATH路径即可

想要看到你的$PATH路径

echo $PATH

软连到其中任意几个路径下面即可

sudo ln -sf /usr/local/nginx/sbin/nginx /usr/local/sbin/

现在, 通过sudo nginx 就可以启动nginx服务了

Nginx 启动/停止/重载

Nginx 一旦启动之后, 就可以通过发送信号来进行进程管理

nginx -s signal

sigal 可能是以下几个之一

reload
quit
stop
reopen

quit

nginx -s quit 平滑关闭Nginx服务,

这种方式可以让 Nginx 完全处理完成请求后将进程关闭,

注意, 这条命令需要使用启动Nginx进程的用户操作

reload

当Nginx配置做了修改, 我们需要重新加载配置, 为了保证这个过程中, Nginx服务可以正常运行和进行服务, 我们可以使用这个命令

nginx -s reload

该命令可以启动新的worker进程, 并逐渐将旧的woker进程关闭, 这个过程是平滑的

stop

快速关闭nginx 进程, 不过这种方式不够平滑

reopen

重新打开日志文件, 暂时没有使用过, 不做说明

Nginx 静态文件配置

Nginx配置的机构包含 events/http/server/location 这几部分

放置在以上几个块之外的被认为是main context

eventshttp 位于 main context 中, server 位于http中, location 位于server

首先, 我们在/data/www 目录下添加一个index.html, 创建/data/images 放一些静态图片资源在里面

nginx.confhttp块中, 添加如下配置

server {
        listen 8080;
        location / {
            root /data/www;
        }

        location /images {
            root /data;
        }
   }

现在, 我们通过8080端口, 就能访问到/data/www下的静态文件了

192.168.1.123:8080/index.html

如果是要访问images下的图片

192.168.1.123:8080/images/logo.png
right