前一篇文章介绍如何搭建属于自己的chatgpt,文中提到需要反向代理openai的api,本文就以nginx为例从0开始反代openai api,当然,使用caddy一样可以,本文只以nginx(宝塔面板)为例。
前提条件
- 需要一台海外服务器,最好是在新加坡这些地区
如果没有海外服务器,利用cf(cloudflare)和腾讯云/阿里云函数一样可以代理api,但是不太稳定,有机会也出一期教程
- 一个域名以及对应的ssl证书
一、安装nginx
以Ubuntu为例
su root #切换root用户
sudoaptupdate-y#更新软件源
sudoaptinstallnginx-y #安装nginx
nginxsystemctlstatusnginx#检查nginx是否安装成功
二、编辑nginx配置文件
nano/etc/nginx/nginx.conf#编辑默认的nginx配置文件
复制粘贴以下内容到最后一行,请根据自己情况自行修改
server {
listen 443 ssl http2;
#仅监听443端口,可以自己替换想要的端口,记得最后放行防火墙
server_name example.com;
#example.com自行换成自己的域名
ssl_certificate "/home/*.crt";
#配置ssl证书文件路径,请自行更改
ssl_certificate_key "/home/*.key";
#配置ssl私钥文件路径,请自行更改
ssl_session_cache shared:SSL:1m;
ssl_session_timeout 10m;
ssl_ciphers HIGH:!aNULL:!MD5;
ssl_prefer_server_ciphers on;
location ~* /(v1|dashboard) {
proxy_pass https://api.openai.com;
#配置反向代理api,无需改动
}
}
然后同时按住ctrl+o键后按回车保存配置文件,之后按住ctrl+x退出,最后放行防火墙并重启nginx
sudoufwallow443#放行443端
sudosystemctlrestartnginx #重启nginx服务
如果重启失败请检查配置是否有误
注意:如果还是不能访问请检查服务器控制台是否放行了对应端口
如果是使用宝塔用户,则需要修改部分nginx ssl配置部分才能启动nginx
ssl_session_cacheshared:SSL:10m;#修改此行
proxy_ssl_server_nameon;#添加此行
proxy_ssl_protocols TLSv1 TLSv1.1 TLSv1.2; #添加此行
三、验证是否反代成功
浏览器打开https://example.com/v1,出现以下内容则说明成功,之后自行配置chatgpt-web中反代(API_REVERSE_PROXY)即可。
评论前必须登录!
注册