Как определить порт REMOTE_PORT / SERVER_PORT не подходят

Тема в разделе "PHP", создана пользователем AndBerd, 19 янв 2009.

Статус темы:
Закрыта.
Модераторы: latteo
  1. AndBerd

    AndBerd Создатель

    Регистр.:
    15 янв 2009
    Сообщения:
    15
    Симпатии:
    0
    Подскажите. :bc:
    Пытаюсь настроить анонимайзер surrogafier-1.0-rc3.php
    Скрипт пытаеться обратиться по адресу vkontakte.ru по 80 порту, но там вероятнее всего настроен другой. Как узнать какой?
    Скрипт выдает ошибку:
    "An error has occurred while attempting to connect to "vkontakte.ru" on port "80".
    Если я правильно понимаю:
    REMOTE_PORT определяет порт обратившегося ко мне браузера
    SERVER_PORT определяет на каком порту работает мой сервер
    А как узнать порт сервера по запрашиваемому адресу??
    Может кто знает как перебирают порты браузеры? Например если 80 закрыт, то дальше браузер начинает к какому обращаться?
     
  2. n0is3

    n0is3 Создатель

    Регистр.:
    12 дек 2008
    Сообщения:
    10
    Симпатии:
    1
    Насколько мне известно, не знаю, может за последние годы все изменилось )))) но тем не менее - стандартно браузер использует 80 порт для соединения с веб-сайтом (ибо 80 порт - это порт для http-соединения всегда был), а перебирать браузер ничего не будет. Если веб-сервис не весит на данном порту - то соединение не устанавливается.

    П.С.: контакт висит на 80 порту, если я не ошибаюсь, скорее всего проблема в коннекте у анонимайзера, может не те заголовки дает, либо твой файрволл не пропускает, либо в контакте какое-то ограничение стоит, может прокси, через который ты хочешь зайти на контакт - не пашет... причин масса.
     
  3. AndBerd

    AndBerd Создатель

    Регистр.:
    15 янв 2009
    Сообщения:
    15
    Симпатии:
    0
    Хотелось бы убедиться, что он на 80 порту.
    Почему тогда остальные сайты работают без проблем, а этот зараза не хотит? Может кто сталкивался с такой проблемой контакта при настройки других скриптов?
     
  4. General Fizz

    General Fizz Боевой Генерал :)

    Регистр.:
    11 апр 2007
    Сообщения:
    753
    Симпатии:
    396
    Если на удаленном сервере будет не родной 80 порт, скорее всего получишь редирект и по нему узнаешь.

    Еще можно проверить телнетом или фаерфоксом с плагином livehttpheader.
     
  5. AndBerd

    AndBerd Создатель

    Регистр.:
    15 янв 2009
    Сообщения:
    15
    Симпатии:
    0
    Вот тут нашел такую функцию:
    getservbyname (); кто подскажет из той это оперы или нет? и какие параметры ставить? (если можно на примере)

    Добавлено через 5 минут
    А про редирект и телнет можно в примере с кодом? Как с их помощью определить? :confused:
     
  6. Chef Vendor

    Chef Vendor Создатель

    Регистр.:
    25 фев 2009
    Сообщения:
    34
    Симпатии:
    0
    Не знаю, что точно делает твой скрипт, но я разрабатываю граберы под портали с серьёзной защитой. Вконтакте закрытый сайт и поисковиками не индексируется, а значит есть защита от всяческих роботов.
    1. порт 80 - 100%, если бы был другой, то он должен был быть в строке адркса (вконце) типа :8080 - такое часто бывает. Не там копаешь.
    2. проверь такие параметры как referer, http-header, поддержку куков, переадресаций и авторизации. (авторизация там приметивная - по кукам, но может модифицироваться из JS - это один из способов маркировать машину браузером)
    3. Антиботы обычно умные, если что-то явно указывает на робот, то они не всегда выдают явную ошибку, а могут сделать так: sleep(20). Юзарь будет думать, что контакт просто подтормозил, а твой скрипт выдаст таймаут.

    зы:
    Если юзаешь курл - могу скинуть функцию, которая не плохо справляется...
     
  7. PapaJoe

    PapaJoe

    Регистр.:
    4 авг 2008
    Сообщения:
    620
    Симпатии:
    311
    Соглашусь с тем, что контакт весит на 80 порту, т.к. чекер вконтакте иначе не работал бы. :D

    насчет твоей функции, она возвращает стандартный порт для указанной службы, пример: getservbyname("www","tcp");
    http://ru2.php.net/getservbyname
     
  8. Chef Vendor

    Chef Vendor Создатель

    Регистр.:
    25 фев 2009
    Сообщения:
    34
    Симпатии:
    0
    А что конкретно ты масетишь? Может есть другие тулзы..
     
Статус темы:
Закрыта.