稳定互联,中美互联,站长交流,虚拟主机,香港主机,美国主机,虚拟空间,免费空间,免费VPS,免费域名

 找回密码
 立即注册
查看: 3124|回复: 0

WordPress使用CDN后获取用户真实IP

[复制链接]
发表于 2024-1-8 21:41:48 | 显示全部楼层 |阅读模式
在主题文件function.php下添加以下代码即可解决:; o# p; p% \4 Q# Q4 j/ Z
  1. /**
    & d. ?0 T7 d1 n7 E
  2. * 获取用户真实IP4 i1 _0 D7 L& ^1 R5 u. r
  3. */
    0 Z, r( r7 R6 `3 h" v* G+ ^* n) e( E
  4. function getIP()
    " E) ^& s- H  K5 U1 o
  5. {
    - l' }" f/ g6 e/ H. n3 }0 e& ~
  6.     static $realIP;
    $ t3 ~  Y  x  R( D- `' R9 z
  7.     if (isset($_SERVER)){9 ?" Q' `- h) M0 g
  8.         if (isset($_SERVER["HTTP_X_FORWARDED_FOR"])){
    4 U/ {8 W$ s6 q; s$ b0 `+ C2 ~
  9.             $realIP = explode(',', $_SERVER["HTTP_X_FORWARDED_FOR"]);
    ! H" M; z) g- C/ |
  10.             $realIP = $realIP[0];
    * |3 M4 h$ r8 _6 y; A
  11.         } else if (isset($_SERVER["HTTP_CLIENT_IP"])) {3 o& q$ \/ d) ^) G+ n
  12.             $realIP = $_SERVER["HTTP_CLIENT_IP"];, k8 ?! i! h  U
  13.         } else {+ y/ h; x) W7 c, B* q; J
  14.             $realIP = $_SERVER["REMOTE_ADDR"];
    . u6 A5 V$ S0 v! x
  15.         }6 V7 |; o: C, F3 i6 [& d% U
  16.     } else {0 N9 I; X0 j3 B! e* V6 A( f" a
  17.         if (getenv("HTTP_X_FORWARDED_FOR")){8 |' a8 v+ L% u$ i
  18.             $realIP = getenv("HTTP_X_FORWARDED_FOR");
    . Q7 @; w- f2 R. R1 }* z+ X8 R
  19.         } else if (getenv("HTTP_CLIENT_IP")) {8 R# b8 m3 S$ u
  20.             $realIP = getenv("HTTP_CLIENT_IP");! [3 l6 l7 n* O5 ]9 ~
  21.         } else {( `: e; q# L" g
  22.             $realIP = getenv("REMOTE_ADDR");
    9 v3 v- b, H7 O% t7 K
  23.         }
    1 B0 |9 d  O1 ^! [! a) p
  24.     }
    2 D. k) |3 e7 i1 ~4 t4 o8 M
  25.     $_SERVER['REMOTE_ADDR'] = $realIP;
    : X" @9 _7 ?4 \
  26.     //return $realIP;" K% d. J% p# T" Z, y5 |7 G
  27. }' K6 \- D, G- L5 I
  28. add_action( 'init', 'getIP' );
复制代码

1 D% \5 h2 b* g+ ]
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|WdidcNet ( 苏ICP备17005075号-1 )

GMT+8, 2025-8-20 12:06 , Processed in 0.022447 second(s), 7 queries , APCu On.

Powered by Discuz!

© 2010-2023.

快速回复 返回顶部 返回列表