返回

nginx配置的那些坑

前端

最近工作之余,突然想起自己N年前入的云服务好像尘封已久,天天只有收到漏洞危险的信息,闲暇之余,突然想起最近新鲜出炉的demo,想着看看把它部署上去,由于之前笔者是做营销H5的项目比较多,所以才发现连最最最基础的服务器都不会操作,那就让我们开整!

一、nginx安装

1. 下载nginx安装包
2. 解压nginx安装包
3. 进入nginx安装包目录
4. 执行./configure --prefix=/usr/local/nginx
5. 执行make
6. 执行make install

二、nginx配置

1. 配置文件

nginx配置文件一般位于/usr/local/nginx/conf/nginx.conf。我们可以使用文本编辑器打开该文件,对其进行修改。

2. 监听端口

nginx默认监听80端口。如果我们需要监听其他端口,可以修改nginx.conf中的listen指令。

listen 8080;

3. 反向代理

nginx可以作为反向代理服务器,将请求转发到其他服务器。我们可以使用nginx.conf中的proxy_pass指令来配置反向代理。

location / {
    proxy_pass http://127.0.0.1:8081;
}

4. 负载均衡

nginx可以作为负载均衡服务器,将请求转发到多个服务器。我们可以使用nginx.conf中的upstream指令来配置负载均衡。

upstream backend {
    server 127.0.0.1:8081;
    server 127.0.0.1:8082;
}

location / {
    proxy_pass http://backend;
}

5. 缓存

nginx可以作为缓存服务器,将请求结果缓存起来,以提高访问速度。我们可以使用nginx.conf中的proxy_cache指令来配置缓存。

proxy_cache_path /var/cache/nginx levels=1 keys_zone=my_cache:10m;

location / {
    proxy_pass http://backend;
    proxy_cache my_cache;
}

三、nginx常见问题

1. nginx启动失败

nginx启动失败可能是由于配置文件错误造成的。我们可以使用nginx -t命令来检查配置文件是否有错误。

2. nginx访问失败

nginx访问失败可能是由于监听端口被占用造成的。我们可以使用netstat -lnp命令来查看监听端口是否被占用。

3. nginx反向代理失败

nginx反向代理失败可能是由于目标服务器没有启动造成的。我们可以使用ping命令来检查目标服务器是否能正常访问。

4. nginx负载均衡失败

nginx负载均衡失败可能是由于服务器没有加入到upstream中造成的。我们可以使用nginx -t命令来检查upstream配置是否正确。

5. nginx缓存失败

nginx缓存失败可能是由于缓存目录没有创建造成的。我们可以使用mkdir命令来创建缓存目录。