nginx配置域名指向

nginx实现自己域名代理阿里云oss域名地址

以下是一个示例的 Nginx 配置,使用服务器 IP 代理阿里云 OSS 域名的方法,并带有详细的代码注释。

# 定义一个新的 upstream,命名为 oss_backend
upstream oss_backend {
  # 指定阿里云 OSS 的域名
  server oss-domain.aliyuncs.com;
}
# http 控制块
http {
  # 定义日志格式
  log_format main '$remote_addr - $remote_user [$time_local] "$request" '
                  '$status $body_bytes_sent "$http_referer" '
                  '"$http_user_agent" "$http_x_forwarded_for"';
  # 定义访问日志路径
  access_log /var/log/nginx/access.log main;

  # 定义错误日志路径
  error_log /var/log/nginx/error.log;
  # 定义 http server
  server {
    # 监听的端口号
    listen 80;

    # 服务器名称
    server_name example.com;

    # location 控制块,规定了请求的处理规则
    location / {
      # 在请求头中增加一个新的字段,将客户端的 IP 地址传递给后端服务器
      proxy_set_header X-Real-IP $remote_addr;

      # 使用代理_pass,将请求转发到 upstream oss_backend 上
      proxy_pass http://oss_backend;

      # 是否启用缓存,默认为 off
      proxy_cache off;

      # 设置超时时间,默认为 60 秒
      proxy_connect_timeout 60s;
      proxy_send_timeout 60s;
      proxy_read_timeout 60s;
      # 设置是否允许后端服务器重定向,默认为 off
      proxy_redirect off;

      # 设置代理缓冲区的大小,默认为 4k 或 8k
      proxy_buffer_size 4k;
      proxy_buffers 4 32k;
      proxy_busy_buffers_size 64k;
      proxy_temp_file_write_size 64k;
      # 启用 gzip 压缩,提高传输速度
      gzip on;
      gzip_min_length 1k;
      gzip_types text/plain application/javascript application/json;

      # 设置允许的请求方法
      if ($request_method !~ ^(GET|HEAD|POST)$ ) {
        return 405;
      }
    }
  }
}

  

上述配置文件是一个简单的 Nginx 代理阿里云 OSS 域名的示例代码。需要注意的是,你需要将 `example.com` 替换为你自己的域名。

这段代码的实际作用是将客户端的请求转发到阿里云 OSS 的域名上,并在请求头中增加一个新的字段 `X-Real-IP`,来传递客户端的真实 IP 地址给后端服务器。

同时,还开启了 gzip 压缩,提高数据传输速度。

这只是一个简单示例的配置,更多的配置选项和注释说明请参考 Nginx 的官方文档

posted @ 2024-03-19 20:54  热心市民~菜先生  阅读(86)  评论(0编辑  收藏  举报