servlet:checkipaddress
04. 接続元IPチェック
https://qiita.com/pilot/items/11efce99be33f17f5bc3 を参照。
CDN なんかを経由すると x-forward-for 使わないとIPアドレスが分からなかったりする。
なので、2つのメソッドを使う。
x-forward-for で取得できなかったら getRemoteAddr() の IP アドレスを使う。
というようにしている。
public void doGet(HttpServletRequest req, HttpServletResponse res) throws IOException, ServletException { String aaa = req.getRemoteAddr(); String bbb = req.getHeader("x-forward-for"); PrintWriter out = res.getWriter(); out.println("getRrmoteAddr : " + aaa); out.println("x-forward-for : " + bbb); }
ローカル環境での動作結果
getRrmoteAddr : 127.0.0.1 x-forward-for : null
servlet/checkipaddress.txt · 最終更新: 2022/10/14 10:08 by hohog