配置NaiveProxy作为反向代理的步骤如下

步骤1:安装NaiveProxy

使用npm安装NaiveProxy:

npm install naive-proxy

步骤2:生成配置文件

使用默认生成方式创建配置文件:

npx naive-proxy generate ./config.js

或者指定JSON格式:

npx naive-proxy generate -o ./config.json

步骤3:编辑配置文件

根据需要编辑生成的配置文件,例如config.js:

module.exports = {
  listenOn: '...:800', // 监听地址和端口
  reverseProxy: {
    from: '!localhost', // 排除localhost
    to: 'http://localhost:8001' // 目标地址和端口
  },
  prefix: '/api', // 前缀
  routes: [
    {
      originalPath: '/api/user.*',
      targetAddress: 'http://localhost:8001',
      targetPort: 8001,
      pathPrefix: '/api' // 路径前缀
    }
  ],
  errorHandler: {
    enabled: true, // 启用错误处理
    path: '/error', // 错误路径
    statusCodes: [404] // 处理404错误
  }
}

步骤4:运行NaiveProxy

启动反向代理:

npx naive-proxy -c ./config.js

或者使用JSON配置:

npx naive-proxy -c ./config.json

步骤5:处理HTTPS(可选)

如果需要处理HTTPS,编辑配置文件添加SSL设置:

module.exports = {
  listenOn: '...:800',
  reverseProxy: {
    from: '!localhost',
    to: 'https://localhost:8443'
  },
  ssl: {
    cert: './cert.pem',
    key: './key.pem',
    ca: './ca.pem'
  }
}

步骤6:测试配置

使用curl或Postman发送请求:

curl http://localhost:800/api/user

检查是否正确转发到http://localhost:8001/api/user。

完善配置(可选)

  • 多路由规则:在routes数组中添加更多规则,如:
    routes: [
      {
        originalPath: '/api/user.*',
        targetAddress: 'http://localhost:8001',
        targetPort: 8001,
        pathPrefix: '/api'
      },
      {
        originalPath: '/api/admin.*',
        targetAddress: 'http://localhost:8002',
        targetPort: 8002,
        pathPrefix: '/api'
      }
    ]
  • 错误处理:在errorHandler中添加更多状态码或自定义处理逻辑。
  • 重写路径:使用rewrite选项修改路径,
    rewrite: {
      '/api/old': '/api/new',
      '/api/v1/*': '/v2/$1'
    }

注意事项

  • 权限问题:在Linux上,运行NaiveProxy可能需要管理员权限。
  • 依赖管理:确保所有依赖(如SSL证书)已正确安装和配置。
  • 安全性:使用自签名证书时,确保在生产环境中使用正确的CA证书。

通过以上步骤,您可以成功配置并运行NaiveProxy作为反向代理,处理外部请求并转发到内部服务。

配置NaiveProxy作为反向代理的步骤如下

@版权声明

转载原创文章请注明转载自原子VPN|多平台网络连接与线路优化工具,支持节点切换、网络测速及电脑手机端使用,满足不同网络环境下的连接需求,网站地址:https://yuanziapp.com.cn/