cw / nginx.conf
sq66's picture
Update nginx.conf
e7ca22d verified
# 定义 Nginx 运行的用户和用户组 (如果需要,通常基础镜像会处理)
# user nginx;
# worker_processes auto; # 让 Nginx 自动决定工作进程数
# 指定 PID 文件路径到 /tmp 目录下,那里通常有写入权限
pid /tmp/nginx.pid;
# 错误日志路径 (可以保持默认或按需修改)
# error_log /var/log/nginx/error.log warn;
# events 块定义连接处理模型
events {
worker_connections 1024; # 每个工作进程允许的最大连接数
}
# http 块定义 HTTP 服务器相关配置
http {
# --- 新增:指定临时文件路径到 /tmp ---
# Nginx 存放客户端请求体的临时文件路径
client_body_temp_path /tmp/client_body_temp;
# Nginx 存放从后端服务器接收到的数据的临时文件路径 (用于 proxy_pass)
proxy_temp_path /tmp/proxy_temp;
# (下面几个通常用不到,但也加上以防万一)
fastcgi_temp_path /tmp/fastcgi_temp;
uwsgi_temp_path /tmp/uwsgi_temp;
scgi_temp_path /tmp/scgi_temp;
# --- 新增结束 ---
# 包含 MIME 类型定义
include /etc/nginx/mime.types;
# 默认文件类型
default_type application/octet-stream;
# 日志格式 (可选)
# 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;
# 启用 sendfile 优化文件传输
sendfile on;
# tcp_nopush on;
# 连接保持超时 (可选)
# keepalive_timeout 65;
# 启用 Gzip 压缩 (可选)
# gzip on;
# 定义我们的反向代理服务器
server {
# 监听 8080 端口
listen 8080;
# 服务器名,接受所有指向这个 Space 的域名
server_name _;
# 处理所有以 /ai/ 开头的请求
location /ai/ {
# 重写 URL,去掉 /ai/ 前缀
rewrite ^/ai/(.*)$ /$1 break;
proxy_ssl_server_name on;
proxy_ssl_protocols TLSv1.2 TLSv1.3;
proxy_ssl_ciphers EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH;
# 转发请求到目标服务器
proxy_pass https://cc.cwapi.me;
# --- 保持这些重要的头部设置 ---
proxy_set_header Host $host; # 注意这里可能需要改成 proxy_set_header Host cc.cwapi.me; 如果你的后端服务需要正确的 Host 头
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header Authorization $http_authorization;
# --- 缓冲区设置 (现在应该可以工作了) ---
proxy_buffers 16 16k;
proxy_buffer_size 32k;
# --- 增加超时设置 (可选,但对 API 调用有好处) ---
proxy_connect_timeout 60s; # 连接后端超时时间
proxy_send_timeout 60s; # 发送请求到后端超时时间
proxy_read_timeout 120s; # 读取后端响应超时时间 (API 可能需要较长时间响应)
}
# 处理根路径 / 的请求
location / {
add_header Content-Type text/plain;
return 404 'Not Found: Please access via /ai/ path\n';
}
# (可选) 将 Nginx 自身的错误日志定向到标准错误输出,方便在 HF Logs 查看
error_log /dev/stderr warn;
# (可选) 将 Nginx 的访问日志定向到标准输出
access_log /dev/stdout; # 可以用上面的 log_format main;
}
# (可选) 你可以禁用错误日志到文件,如果你不希望它们写入容器文件系统
# error_log /dev/null crit; # 禁用错误日志文件
}