# http-proxy **Repository Path**: chen-binfa/http-proxy ## Basic Information - **Project Name**: http-proxy - **Description**: 多站点http/https反向代理工具 - **Primary Language**: Unknown - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2022-10-10 - **Last Updated**: 2022-10-10 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 多站点http/https反向代理工具 Nginx中,可以使用相同的端口配置不同的站点,比如:www.a.com和www.b.com这两上网站都使用相同的80端口运行,Nginx会根据访问的域名自动判断,但如果没有安装Nginx或者觉得Nginx配置起来太麻烦,那么就可以使用此工具轻松达到相同目的,此项目大小只有100+K,简洁小巧,配置起来非常简单,只需要服务器安装有node.js环境即可使用,同时支持http与https、http转https、https转http。 ## 使用方法 ``` javascript git clone https://gitee.com/chen-binfa/http-proxy cd http-proxy npm i npm start ``` ## 配置说明 配置文件在根目录的 webconfig.js文件,配置格式如下: ``` javascript { port:{ http:80, //http运行端口 https:443 //https运行端口 }, sites: [ { enable:true, //是否启用 name: 'localhost', //站点名称 host: 'localhost', //站点域名 target: 'http://127.0.0.1:450', //被代理的站点,注意后面不要带斜杠 “、” http:true, //是否启用对外http服务 https:false //是否启用对外https服务 }, { enable:true, name: 'xiaoshuicao.com', host: 'xiaoshuicao.com', target: 'http://127.0.0.1:450', http:true, https:false }, ... ] } ``` - 注意:https需要把证书放到 /ssl 目录下,文件名分别是 域名+.crt与域名+.key 如: ``` javascript /ssl/a.com.crt /ssl/a.com.key ``` ## 示例 ### http 88端口转80端口 ``` javascript { enable:true, //是否启用 name: 'localhost', //站点名称 host: 'localhost', //站点域名 target: 'http://127.0.0.1:88', //被代理的站点,注意后面不要带斜杠 “、” http:true, //是否启用对外http服务 https:false //是否启用对外https服务 } ``` ### http转https ``` javascript { enable:true, //是否启用 name: 'localhost', //站点名称 host: 'localhost', //站点域名 target: 'http://127.0.0.1:88', //被代理的站点,注意后面不要带斜杠 “、” http:true, //是否启用对外http服务 https:true //是否启用对外https服务 } ``` ### https转http ``` javascript { enable:true, //是否启用 name: 'localhost', //站点名称 host: 'localhost', //站点域名 target: 'https://192.168.1.2:88', //被代理的站点,注意后面不要带斜杠 “、” http:true, //是否启用对外http服务 https:false //是否启用对外https服务 } ```