Wordpress访客IP地址

时间:2015-06-09 08:56:52

标签: wordpress security

有什么方法可以让用户的IP地址搜索"某些东西"过去在wordpress网站上。我没有为此目的安装任何插件。

3 个答案:

答案 0 :(得分:0)

尝试使用会跟踪用户的插件wp-statistics。此插件将帮助您跟踪WordPress网站的统计信息。

答案 1 :(得分:0)

您可以为wordpress安装此插件,以查看用户引用您网站的网站:https://wordpress.org/plugins/statpress-visitors/ 它还具有以下功能:“新页面”URL监控“显示所有请求的URL与作者写的帖子和页面不对应,以拒绝访问入侵者或黑客。” 它显示了具有地理位置的IP。

答案 2 :(得分:0)

将 get_visitor_ip 函数添加到主题的 functions.php 或主题的子项中。您还需要在 Web 服务器日志记录中启用 HTTP_X_FORWARDED_FOR。由于两个 HTTP_X_FORWARDED_FOR 代理层,捕获的 IP 地址字符串可能有多个以逗号分隔的 IP(如此罕见,但如果有人能向我解释这是如何发生的,那就太好了!)。出于这个原因,我使用 PCE 匹配来获取第一个匹配的 IP 地址。

 function get_visitor_ip() {
    if (!empty( $_SERVER['HTTP_CLIENT_IP'])) {
        //to check ip from share internet
        $ip = $_SERVER['HTTP_CLIENT_IP'];
    } elseif (!empty($_SERVER['HTTP_X_FORWARDED_FOR'])) {
        //to check ip is from proxy
        $ip = $_SERVER['HTTP_X_FORWARDED_FOR'];
    } else {
        $ip = $_SERVER['REMOTE_ADDR'];
    }
    // match first IP address for possibility that the captured IP address string 
    // has more than one IP due to two HTTP_X_FORWARDED_FOR layers of proxies
    $re = '/(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})/s';
    $matches = array();
    if(preg_match($re, $ip, $matches, PREG_OFFSET_CAPTURE, 0) === 1) {
        $ip = $matches[0][0];
    }
    return apply_filters('wpb_get_ip', $ip);
 }
 add_shortcode('visitor_ip', 'get_visitor_ip');