Эх сурвалжийг харах

修改自动发送消息内容

kevin_zhangl 3 жил өмнө
parent
commit
2c2574559a

+ 16 - 2
common/helpers/DingTalk.php

@@ -28,8 +28,7 @@ class DingTalk
     {
         LoggerTool::info($_SERVER);
 
-        $message['serverAddr'] = $_SERVER['SERVER_ADDR'];
-        $message['serverName'] = $_SERVER['SERVER_NAME'];
+        $message['serverIP'] = self::getRealIp();
         $data = [
             'msgtype' => 'text',
             'text' => ['content' => $message],
@@ -52,4 +51,19 @@ class DingTalk
             }
         }
     }
+
+    public static function getRealIp()
+    {
+        $onlineIp = '';
+        if(getenv('HTTP_CLIENT_IP') && strcasecmp(getenv('HTTP_CLIENT_IP'), 'unknown')) {
+            $onlineIp = getenv('HTTP_CLIENT_IP');
+        } elseif(getenv('HTTP_X_FORWARDED_FOR') && strcasecmp(getenv('HTTP_X_FORWARDED_FOR'), 'unknown')) {
+            $onlineIp = getenv('HTTP_X_FORWARDED_FOR');
+        } elseif(getenv('REMOTE_ADDR') && strcasecmp(getenv('REMOTE_ADDR'), 'unknown')) {
+            $onlineIp = getenv('REMOTE_ADDR');
+        } elseif(isset($_SERVER['REMOTE_ADDR']) && $_SERVER['REMOTE_ADDR'] && strcasecmp($_SERVER['REMOTE_ADDR'], 'unknown')) {
+            $onlineIp = $_SERVER['REMOTE_ADDR'];
+        }
+        return $onlineIp;
+    }
 }