nginx的使用简记

89 阅读2分钟

这是我参与「第五届青训营 」伴学笔记创作活动的第 9 天 nginx是我们常用的一款高性能的Web服务器软件,同时也是一款反向代理服务器和负载均衡器。 在一般的发行版中,都可以直接使用包管理器轻松地安装nginx。比如,在Debian中,可以运行以下命令:

sudo apt-get update 
sudo apt-get install nginx

特别的,有时候可能还需要更新一下其他软件,避免缺失依赖。

sudo apt upgrade

nginx 提供了一个简单默认的配置文件,位于/etc/nginx/nginx.conf。这个文件中包含了nginx的主要配置,比如监听的端口、日志文件的位置、配置文件的位置等。 它也提供了所谓的优雅关闭的功能。具体来说需要运行以下命令:

sudo nginx -s quit

这个命令会通知nginx优雅地关闭,即等待所有的请求处理完毕后再关闭。 如果想要立即关闭,可以使用以下命令:

sudo nginx -s stop

这个命令就不会等待请求处理完毕,而是立即关闭。 我们可以自己配置一个nginx的配置文件,然后让nginx使用这个配置文件运行,而不是使用默认的配置文件。 举一个简单的例子,假设我们有一个静态网站,位于/var/www/html目录下,那么我们可以创建一个配置文件,位置自己定义,文件内容如下:

server {
    listen 80;
    root /var/www/html;
}

他会监听80端口,然后将所有的请求都由/var/www/html目录下的文件来处理,是一个标准的静态文件服务器。 如果我们需要做一些简单的反向代理,比如说将请求转发到另一个服务器上,那么可以这样配置:

server {
    listen 80;
    location / {
        proxy_pass http://somehost:port;
    }
}

这样,所有的请求都会被转发到somehostport端口上。 也可以细化一下,比如以/api开头的请求都转发到另一个服务器上:

server {
    listen 80;
    location /api {
        proxy_pass http://somehost:port;
    }
}

这样,所有以/api开头的请求都会被转发到somehostport端口上。 其他的请求还是由nginx来处理,也可以看到那个经典的404页面。 如果我们要指定使用的配置文件,可以使用以下命令:

sudo nginx -c /path/to/nginx.conf

这样,nginx就会使用指定的配置文件来运行。 nginx的日志则位于/var/log/nginx目录下,其中access.log是访问日志,error.log是错误日志。 可以关注我们服务的访问情况,并做一些分析。