在开始前,你需要了解这些知识#
- 在中国大陆境内域名提供商购买的域名,需要实名认证才能开启 DNS 解析。而在国外域名提供商买的域名则不用。
- 指向中国大陆内的云服务器的域名提供的网站,必须备案才能正常被访问。但是任何指向国外服务器的域名却可以不受此规则的限制。可以利用这一点,绕过 __ 的限制。
- Vercel 是一个无需云服务器即可快速部署现代 Web 应用程序的平台。
- vercel.app 本身是被墙了的网站,但是它的服务器 IP 却没有被墙。可以利用这点,让你的域名直接指向 Vercel 服务器,从而访问 Vercel 提供的服务。
- 此文章采用 Yidadaa/ChatGPT-Next-Web 来搭建 ChatGPT 网页服务。
先决条件#
- OpenAI API Key
- 一个域名
- 魔法(访问 Vercel 时需要用到)
详细步骤#
-
Fork Yidadaa/chatgpt-vercel 项目至你的 GitHub。
-
在 Vercel 新建一个项目,并选取你刚刚 Fork 的项目,点击 Import 按钮。
-
在 Environment Variables 中添加环境变量,然后点击 Deploy 按钮。
对于个人使用,添加
OPENAI_API_KEY
和CODE
就足够了。CODE
可以设置多个密码,但需以,
分割。图中的123456,789012
代表的是123456
和789012
都是密码。如果你想更详细了解地此项目中的环境变量,请参考 ChatGPT-Next-Web 项目官方的 环境变量说明。
请特别关注:图中截取的 API Key 并不完整且已经过处理,无法被直接使用。
-
现在,你的项目已经部署成功,试试看能不能访问吧。
-
记得在 设置 -> 授权码 填写你在
CODE
环境变量中设置的密码,否则将无法使用。我在这里要求 ChatGPT 以特定的格式(HTML 代码)帮我推荐渐变色。HTML 代码经过 Typora 渲染,也能极大地提升内容的可读性与直观性。
-
绑定你的域名。点击 Settings -> Domains,输入待绑定的域名,然后点击 Add 按钮。
这里以 test.nekoko.top 为例。
-
在你域名的 DNS 解析中添加 Vercel 的 CNAME 或者 A 记录(二者任选其一即可)。
此处以 Cloudflare 为例。打开网址 dash.cloudflare.com 添加 DNS 记录。
-
DNS -> 记录 -> 添加记录。添加 CNAME 记录如下,并保存。
cname-china.vercel-dns.com
-
-
在浏览器打开绑定的域名,这里以 test.nekoko.top 为例。
值得注意的是,如果浏览器地址栏提示不安全,请等待几分钟后再重新访问,因为此时 Vercel 正在生成 SSL 证书,浏览器无法使用 HTTPS 连接。
在 Vercel 项目中的 Settings -> Domains 中,成功绑定好的域名应该是与下图类似的。
-
在你并不能确保你访问者会不会正当、适量使用你提供的服务时,请注意不要随意分享你的网站,除非你足够信任 TA。任何一点风吹草动都可能导致你的域名被墙。