首页 新闻 会员 周边

能用 NGINX 反向代理 OpenAI GPT 的网站 https://chatgpt.com/ 吗??

0
悬赏园豆:80 [待解决问题]

我的NGINX配置如下,访问的时候只有 502 Bad Gateway,不知道是什么原因?如果哪位大佬方便的话希望帮忙试一下,谢谢!

server {
    # the domain name it will serve for
    server_name gpt.xxxx.org; # substitute your machine's IP#以后全面https的话这一句要去掉


  location /
  {
        proxy_pass https://chatgpt.com/;

 proxy_redirect https://chatgpt.com/ /;
 proxy_cookie_domain google.com gpt.xxxx.org;
 
 proxy_set_header Accept-Encoding "";
 proxy_set_header User-Agent $http_user_agent;
 proxy_set_header Accept-Language "zh-CN";


         proxy_set_header X-Real-IP $remote_addr;
 proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
  }


    listen 443 ssl; # managed by Certbot
    ssl_certificate /etc/letsencrypt/live/gpt.xxxx.org/fullchain.pem; # managed by Certbot
    ssl_certificate_key /etc/letsencrypt/live/gpt.xxxx.org/privkey.pem; # managed by Certbot
    include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot
    ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbot

}
iMath的主页 iMath | 初学一级 | 园豆:124
提问于:2024-05-25 15:08
< >
分享
所有回答(4)
0

铁铁, 想法很好, 但肯定是不行的再怎么代理都解决不了页面连接socket的地址获取返回内容的问题, 我爱说实话

流年啊`你奈我何 | 园豆:202 (菜鸟二级) | 2024-05-25 20:39

那为什么我fq能用?fq不也是代理吗?

支持(0) 反对(0) iMath | 园豆:124 (初学一级) | 2024-05-26 11:11
-1

echo_lovely | 园豆:1442 (小虾三级) | 2024-05-27 10:00
0

要使用 NGINX 作为反向代理访问 OpenAI GPT 的网站 https://chatgpt.com/,你的配置看起来大致正确,但有几个地方需要注意和修改。以下是一个详细的 NGINX 配置示例,包括一些常见的错误修正和优化建议:

确保你已经安装并配置了 SSL 证书。
调整 proxy_pass 相关的指令,以确保正确代理。
添加必要的超时和缓冲区设置以处理可能的延迟。
以下是一个优化后的 NGINX 配置示例:

nginx
Copy code
server {
server_name gpt.xxxx.org;

listen 443 ssl; # managed by Certbot
ssl_certificate /etc/letsencrypt/live/gpt.xxxx.org/fullchain.pem; # managed by Certbot
ssl_certificate_key /etc/letsencrypt/live/gpt.xxxx.org/privkey.pem; # managed by Certbot
include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot
ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbot

location / {
    proxy_pass https://chatgpt.com/;
    proxy_redirect off;
    proxy_set_header Host $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;
    
    # Optionally you can add more proxy headers
    proxy_set_header X-Forwarded-Host $host;
    proxy_set_header X-Forwarded-Port $server_port;
    
    # Handle WebSocket connections
    proxy_http_version 1.1;
    proxy_set_header Upgrade $http_upgrade;
    proxy_set_header Connection "upgrade";

    # Timeout and buffer settings
    proxy_connect_timeout 60s;
    proxy_send_timeout 60s;
    proxy_read_timeout 60s;
    send_timeout 60s;

    proxy_buffer_size 128k;
    proxy_buffers 4 256k;
    proxy_busy_buffers_size 256k;
    proxy_temp_file_write_size 256k;
}

}
关键点解释:
proxy_set_header Host $host;:这确保了后端服务器看到的是正确的主机名。
proxy_set_header X-Forwarded-Proto $scheme;:这会将原始请求的协议(HTTP 或 HTTPS)转发给后端服务器。
proxy_http_version 1.1; 和相关的 WebSocket 配置:这对于支持 WebSocket 连接是必要的,特别是如果后端服务使用 WebSocket。
超时和缓冲区设置:这些设置可以帮助处理后端服务响应较慢的情况,防止出现 502 错误。
检查事项:
确保你的防火墙没有阻止任何必要的端口(如 443)。
确保后端服务(chatgpt.com)没有在某些特定情况下阻止你的请求,例如,基于 User-Agent 的阻止。
应用这些更改后,重新加载或重启 NGINX:

sh
Copy code
sudo nginx -t
sudo systemctl reload nginx
这应该能解决大多数 502 Bad Gateway 错误,并成功代理到 https://chatgpt.com/。如果问题仍然存在,可以查看 NGINX 的错误日志(通常位于 /var/log/nginx/error.log),以获取更多调试信息。

Technologyforgood | 园豆:6766 (大侠五级) | 2024-05-27 20:34

很显然阁下也没有测试过,答案也是ai给的

支持(0) 反对(0) iMath | 园豆:124 (初学一级) | 2024-05-27 21:29
0

想法很好,但有诸多需要解决的问题,nginx代理会留下痕迹。并且代理不了页面中的src和link。
既然你可以访问chatgpt,那么你为什么不尝试用nginx直接代理它的API呢?
代理这个地址:

https://api.openai.com/v1/chat/completions

配合这个客户端工具简直完美。

Only丿阿海 | 园豆:202 (菜鸟二级) | 2024-06-06 16:39

谢谢!主要是API要钱吧,我是想搞个免费的给大家用用

支持(0) 反对(0) iMath | 园豆:124 (初学一级) | 2024-06-07 19:46
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册