特定国家/地区的网站访问受限

时间:2017-08-02 13:03:53

标签: php codeigniter codeigniter-3

我有一个电子商务网站,使用Codeigniter 3.0.6开发。该网站有5-6个产品类别。我想控制类别和产品访问,如:

  • 第1类:仅在美国展示
  • 第2类:在印度

有人能告诉我如何通过管理面板控制这个吗?

1 个答案:

答案 0 :(得分:0)

为此,您需要拥有一个地理位置库,将访问者的IP地址转换为国家/地区代码以获取方向。请下载并设置地理位置库https://github.com/ip2location/codeigniter-ip2location,然后在索引中添加代码(或任何需要重定向的函数)。

    //get the ip address
    $ip = $this->input->ip_address();

    //get country code by IP address
    $this->load->library('ip2location_lib');
    $countryCode = $this->ip2location_lib->getCountryCode($ip);

    //perform redirection based on country
    $this->load->helper('url');
    if ($countryCode == 'US'){
        redirect('/watches');
    }
    else{
        redirect('/gadgets');
    }

上面的代码将使用ip_address()字段获取IP地址,然后它将值传递给ip2location_lib以检索2位数的国家/地区代码。最后,它将检查国家/地区代码以进行重定向。例如,如果来自美国的访问者重定向到手表页面。