You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何将Candy Machine指向自有域名完成部署?

自有域名部署Candy Machine操作流程

你找不到对应配置项的核心原因是:Candy Machine本身是部署在Solana链上的链上程序,本地启动时默认绑定localhost的是官方配套的前端脚手架,并非Candy Machine核心服务,相关配置分散在环境变量、构建配置、链上规则三个位置,按以下步骤操作即可:

  • 第一步:修改环境变量中的站点地址配置
    进入前端项目根目录,查找.env、.env.local、.env.production类的环境变量文件,把默认配置里的localhost地址替换为你的自有域名,注意要带HTTPS前缀、结尾不要加斜杠:
    # Next.js 版本脚手架默认变量名
    NEXT_PUBLIC_SITE_URL=https://你的自有域名.com
    NEXT_PUBLIC_RPC_HOST=你使用的Solana RPC节点地址
    
    如果是基于Vite构建的旧版前端模板,对应的变量名为VITE_SITE_URL,替换逻辑一致。
  • 第二步:调整前端服务的监听规则
    如果你是自主搭建服务器托管前端,而非使用静态站点托管平台,需要修改服务启动配置,避免服务默认仅监听本地回环地址:
    1. Next.js框架的项目,直接修改根目录package.json里的脚本字段:
    "scripts": {
      "dev": "next dev -p 自定义服务端口 -H 0.0.0.0",
      "build": "next build",
      "start": "next start -p 自定义服务端口 -H 0.0.0.0"
    }
    
    1. Vite框架的项目,在根目录vite.config.js中添加服务监听配置:
    export default defineConfig({
      server: {
        host: '0.0.0.0',
        port: 自定义服务端口,
        allowedHosts: ['你的自有域名.com']
      }
    })
    
  • 第三步:配置域名解析与反向代理
    在域名服务商后台把域名A记录解析到托管服务器的公网IP,通过Nginx或Caddy配置反向代理,将443端口的HTTPS请求转发到上一步配置的前端服务端口即可,必须配置有效SSL证书,否则会出现钱包无法连接、铸造请求被拦截的问题。
  • 第四步:更新链上Candy Guard配置
    前端部署完成后,需要更新对应Candy Machine绑定的Candy Guard规则,把你的自有域名加入允许的铸造来源列表,否则链上会拦截非默认地址发起的铸造请求。直接调用Metaplex Candy Machine SDK的updateCandyGuard方法,在规则参数里加入你的域名即可。

注意:不要直接修改node_modules目录下的框架默认配置,这类修改会在重新安装依赖时被覆盖,所有自定义调整都要在项目根目录的配置文件中完成。

内容的提问来源于stack exchange,提问作者netsocket

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.30 16:27:20