【聲明】 轉載 自 文章
最近Jetbrians系列IDE更新至2017.3版本麸粮,激活檢測機制也變成了動態(tài)封禁域名蛮放,導致大部分域名激活被屏蔽了拍皮,所以找了下資料,根據(jù)ilanyu的代碼,改了下地址,實現(xiàn)了本地反向代理激活服務器贿堰。
具體Go代碼如下:
package main
import (
"flag"
"log"
"net/http"
"net/http/httputil"
"net/url"
)
type handle struct {
reverseProxy string
}
func (this *handle) ServeHTTP(w http.ResponseWriter, r *http.Request) {
remote, err := url.Parse(this.reverseProxy)
if err != nil {
log.Fatalln(err)
}
proxy := httputil.NewSingleHostReverseProxy(remote)
r.Host = remote.Host
proxy.ServeHTTP(w, r)
log.Println(r.RemoteAddr + " " + r.Method + " " + r.URL.String() + " " + r.Proto + " " + r.UserAgent())
}
func main() {
bind := flag.String("l", "0.0.0.0:8888", "listen on ip:port")
remote := flag.String("r", "http://idea.imsxm.com:80", "reverse proxy addr")
flag.Parse()
log.Printf("Listening on %s, forwarding to %s", *bind, *remote)
h := &handle{reverseProxy: *remote}
err := http.ListenAndServe(*bind, h)
if err != nil {
log.Fatalln("ListenAndServe: ", err)
}
}
使用方法:
可選參數(shù):
-l string
listen on ip:port (default "0.0.0.0:8888")
-r string
reverse proxy addr (default "http://idea.imsxm.com:80")
暫時只編譯了windows X64平臺,并且UPX打包辙芍,激活時輸入 http://localhost:8888
就行。
下載地址:點我下載V1.0
親測可用