Как блокировать посетителей из опр.Страны?

Discussion in 'PHP' started by ZemoN, 8 Nov 2008.

  1. Pashkela

    Pashkela Динозавр

    Joined:
    10 Jan 2008
    Messages:
    2,750
    Likes Received:
    1,044
    Reputations:
    339
    .htaccess, всегда
     
  2. nerezus

    nerezus Banned

    Joined:
    12 Aug 2004
    Messages:
    3,191
    Likes Received:
    727
    Reputations:
    266
    Фу так делать

    http://ru.wikipedia.org/wiki/MVC
     
  3. ZemoN

    ZemoN New Member

    Joined:
    8 Nov 2008
    Messages:
    16
    Likes Received:
    0
    Reputations:
    0
    ты просто ЧЕЛОВЕЧИЩЕ.... огромное СПС
    ____________
    Да как кстати лучше обезопасить GeoIP.dat, ну шоб с сайта не стырили )
     
    #23 ZemoN, 12 Nov 2008
    Last edited: 12 Nov 2008
  4. Pashkela

    Pashkela Динозавр

    Joined:
    10 Jan 2008
    Messages:
    2,750
    Likes Received:
    1,044
    Reputations:
    339
    сделай такой .htaccess:
    Code:
    Options -Indexes
    <Files "GeoIP.dat">
    order allow,deny
    deny from all
    </Files>
    
     
    1 person likes this.
  5. ZemoN

    ZemoN New Member

    Joined:
    8 Nov 2008
    Messages:
    16
    Likes Received:
    0
    Reputations:
    0
    кстати пробую щас с таким решением..... что то он не работает (сервак PHP поддерживает) ((
    код уже вставлял где не поподя..... просто реакции ни какой .....
    что делать??
     
    #25 ZemoN, 12 Nov 2008
    Last edited: 12 Nov 2008
  6. ZemoN

    ZemoN New Member

    Joined:
    8 Nov 2008
    Messages:
    16
    Likes Received:
    0
    Reputations:
    0
    Pashkela не подскажишь почему вышенаписанный тобой ПШП не работает?
     
    #26 ZemoN, 13 Nov 2008
    Last edited: 13 Nov 2008
  7. Pashkela

    Pashkela Динозавр

    Joined:
    10 Jan 2008
    Messages:
    2,750
    Likes Received:
    1,044
    Reputations:
    339
    вариантов несколько:

    1. твой хост не поддерживает php
    2. поддерживает, но php не установлен
    3. Неправильно скопировал
    4. Не туда вставил
    5. Что-то накосячил, когда вставлял
    6. Код работает, но, например, не работает твой остальной код
    7. http://место_для_русских" - тут должна быть твоя ссылка, а не та хрень, что тут написана
    8. etc.......

    В общем дофига и больше вариантов. Код рабочий, сам проверял на себе. Если бы код был неправильный, думаю старшие меня бы давно зачмырили - тут же ачад, а не шишки-баб
     
  8. ZemoN

    ZemoN New Member

    Joined:
    8 Nov 2008
    Messages:
    16
    Likes Received:
    0
    Reputations:
    0
    1. хост поддерживает php
    2. php установлен
    3. скопировал и вставил туда, наверно... ) в HTML страницу между тегов head
    4. Пять раз перепроверил... все ок
    5. какой остальной код может не работать? О_о
    6. http://место_для_русских" ну до этого то я допер =)))
    Вообщем ХЗ почему он не пашет (((
     
  9. Pashkela

    Pashkela Динозавр

    Joined:
    10 Jan 2008
    Messages:
    2,750
    Likes Received:
    1,044
    Reputations:
    339
    переименуй из .html в .php

    Вообще должна быть что-то типо index.php

    В обычный .html php-код вставлять нет смысла просто - не будет работать

    А вот в .php можно вставлять html-код - будет работать и то и другое

    Но тут уже структура твоего сайта может не позволить так сделать. Чтобы проверить, работает код или нет (а также наличие php на сайте) - создай файл test.php и вставть туда код, что выше, а потом просто перейди по адресу http://твой_сайт/test.php

    не надо сразу пытаться предложенные скрипты сувать в рабочий код, всегда тести в отдельных файлах
     
  10. Solker

    Solker Elder - Старейшина

    Joined:
    4 May 2006
    Messages:
    175
    Likes Received:
    53
    Reputations:
    18
    Pashkela твоя доброта не знает границ.
     
  11. ZemoN

    ZemoN New Member

    Joined:
    8 Nov 2008
    Messages:
    16
    Likes Received:
    0
    Reputations:
    0
    т.е. как я понял, можно взять просто тупа поменять расширение страничик с HTML на PHP после чего просто отредактировать "a href=" и все будит работать, включая вышенаписанный табой код?
    а как это скажится на индиксации сайта?

    и еще вопрос:

    Подскажите , а лучше покажите готовый пример передачи через mod_rewrite запрос php скрипту, который и выполняет проверку при посещении любой страницы статичного сайта.
    просто хочу делать проверку по geoip.
     
    #31 ZemoN, 14 Nov 2008
    Last edited: 14 Nov 2008
  12. login999

    login999 Elder - Старейшина

    Joined:
    12 Jun 2008
    Messages:
    491
    Likes Received:
    280
    Reputations:
    92
    ТС, ставь TDS и не парь мозг ни себе, ни Пашкеле :) - будет тебе и проверка по ГеоИП,и так далее :)
     
  13. ZemoN

    ZemoN New Member

    Joined:
    8 Nov 2008
    Messages:
    16
    Likes Received:
    0
    Reputations:
    0
    ээээ... а что такое TDS ? :confused:
    П.С. я токак начинаю во всем этом разбираться :rolleyes:
     
  14. ZemoN

    ZemoN New Member

    Joined:
    8 Nov 2008
    Messages:
    16
    Likes Received:
    0
    Reputations:
    0
    создал вот что:
    .htaccess-
    Code:
    RewriteEngine on
    RewriteRule ^.*\.html /script.php
    
    redirect /_vti_bin http://www.microsoft.com
    redirect /scripts http://www.microsoft.com
    redirect /MSADC http://www.microsoft.com
    redirect /c http://www.microsoft.com
    redirect /d http://www.microsoft.com
    redirect /_mem_bin http://www.microsoft.com
    redirect /msadc http://www.microsoft.com
    RedirectMatch (.*)\cmd.exe$ http://www.microsoft.com$1
    
    DirectoryIndex index.html
    Options -Indexes
    script.php-
    Code:
    <?php   
    
    $file = explode("?", getenv('REQUEST_URI'));
    array_pop($file);
    $file = $DOCUMENT_ROOT.$file[0];
    
    require_once("geoip.inc");   
    $gi = geoip_open("GeoIP.dat",GEOIP_STANDARD);   
    $ip = $_SERVER['REMOTE_ADDR'];   
    if ($ip == '94.188.51.41')
    {
      readfile($file);
      exit;
    }
    $code = geoip_country_code_by_addr($gi, $ip);   
    if ($code=='RU')   
    {   
      header("Location: http://yandex.ru");  
    }   
    else    
    {   
      readfile($file);   
    }   
    ?>
    но:
    1. Index сначала грузится без фильтра
    2. При переходе уже на самом сайте переадрисовывает нежелательного пользователя нормально правда для желательного пользователя грузит пустую страницу(белый экран) а путь вверху показывает правильно

    проблема вроде от сюда
    Code:
    $file = $DOCUMENT_ROOT.$file[0];
    в чем тут дело?
     
    #34 ZemoN, 15 Nov 2008
    Last edited: 15 Nov 2008
  15. vikseriq

    vikseriq Elder - Старейшина

    Joined:
    31 Jul 2008
    Messages:
    118
    Likes Received:
    44
    Reputations:
    2
    хз. тут не так трудно надо:
    1 все гоним на обработчик с параметром, он же запрос
    2 берем там ип.
    3.1 если ип не нужный - гоним через Location : site.ru
    3.2 иначе гоним на наш сайт, добавив в строку параметр.
     
  16. login999

    login999 Elder - Старейшина

    Joined:
    12 Jun 2008
    Messages:
    491
    Likes Received:
    280
    Reputations:
    92
    Simple TDS - бесплатная система распределения траффика
    http://simpletds.com/