Посоветуйте простейший HTTP-прокси для сайта

Тема в разделе "WASM.HEAP", создана пользователем _DEN_, 18 янв 2011.

  1. _DEN_

    _DEN_ DEN

    Публикаций:
    0
    Регистрация:
    8 окт 2003
    Сообщения:
    5.383
    Адрес:
    Йобастан
    Привет.

    Есть сайт, хостящийся в стране A. Нужно сделать так, чтобы по отдельному домену этот сайт был доступен так, как будто он хостится в стране B. Как я себе представляю самое простое решение: в стране B арендуем хостинг, в DNS для отдельного домена прописываем IP сервера страны B, а на самом сервере ставим тупую форвардилку трафика.

    Существует ли какое-то простое решение такой прокси, которое можно поставить на самый простой виртуальных хостинг (самый дешевый)? Если бы это был дедик, то я бы написал проксю на C++/asio, но дедик брать не хочется. На сайт могут заливаться большие файлы POST-запросами, поэтому простой php-скрипт вида echo file_get_contents(...); не подойдет. Нужна потоковая пересылка, а не "все прочитали - все отправили".

    Что посоветуете?
     
  2. Cr4sh

    Cr4sh New Member

    Публикаций:
    0
    Регистрация:
    17 апр 2006
    Сообщения:
    668
    Посоветую бесплатно взять linux-сервер в облаке Amazon-а. Пользуюсь уже месяца два, пока что всё ок. Если не вылезать за ограничения фриварного аккаунта - то срок действия обещают в 12 месяцев.
    Алсо, у них и обычные тарифы копеечные, и с бесплатного аккаунта на них можно переходить в любое время, при этом твои сервера всегда будут при тебе.
    Да, при регистрации нужно будет ввести номер кредитки, с которой снимут один доллар для проверки валидности. Я использовал виртуальную карту Visa, на которую положил 50 рублей, лол.
     
  3. _DEN_

    _DEN_ DEN

    Публикаций:
    0
    Регистрация:
    8 окт 2003
    Сообщения:
    5.383
    Адрес:
    Йобастан
    Cr4sh

    Ну номер кредитки я и своей могу указать, т.к. это обычный белый проект, ничего криминального :) Дело в том, что моя страна B - это Китай. У Амазона есть серверы в Китае? :)
     
  4. Cr4sh

    Cr4sh New Member

    Публикаций:
    0
    Регистрация:
    17 апр 2006
    Сообщения:
    668
    Да, ещё можно попробовать использовать бесплатный хостинг приложений от Google. Google App Engine, грубо говоря, представляет собой несколько урезанный в плане дефолтных библиотек python, но сокеты или http клиент там, скорее всего, должны быть. Ещё там присутствует некое подобие крона, которым можно запускать свои задачи в бекграунде.
     
  5. Cr4sh

    Cr4sh New Member

    Публикаций:
    0
    Регистрация:
    17 апр 2006
    Сообщения:
    668
    Мда, тогда ни Амазон ни Google не вариант :dntknw:
     
  6. r90

    r90 New Member

    Публикаций:
    0
    Регистрация:
    26 ноя 2005
    Сообщения:
    898
    _DEN_
    В php есть сокеты, есть select. А что ещё надо для потоковой пересылки? Может быть обработка сигналов, или что-нибудь в этом роде. Но это в случае C могут понадобится такие сложности, в php, я думаю, свои методы обработки асинхронных событий. Какие-нибудь там исключения, коды возврата или ещё что-нибудь в этом роде. Во-всяком случае, это несложно выясняется в документации.
    На C "простейший" прокси на select'е, можно уложить строк в пятьсот. На php, можно надеяться, он уложится в 300. 300 строк -- это достаточно просто?

    Подумал сам над вопросом -- думаю достаточно. Если речь о трёхстах строках кода, то скорее всего они где-нибудь уже лежат в интернете, причём в паблике. И главное: я думаю гугл знает где. (только тс-с-с... не говори никому)
     
  7. Cr4sh

    Cr4sh New Member

    Публикаций:
    0
    Регистрация:
    17 апр 2006
    Сообщения:
    668
    Так кто ж тебе разрешит на обычном шаред-хостинге биндить порт для прокси и вешать какие-то задачи в бекграунде?
     
  8. _DEN_

    _DEN_ DEN

    Публикаций:
    0
    Регистрация:
    8 окт 2003
    Сообщения:
    5.383
    Адрес:
    Йобастан
    Да, видимо простой хостинг тут не катит. Кто-нибудь может посоветовать дешевый китайский windows-хостинг с выделенным IP? :)
     
  9. r90

    r90 New Member

    Публикаций:
    0
    Регистрация:
    26 ноя 2005
    Сообщения:
    898
    Cr4sh
    Ах даже так...
    Но тогда всё ещё проще. Тогда всё мультиплексирование ввода/вывода надо оставлять апачу, и тупо обрабатывать коннект перенаправляя его куда-то там. Единственное что -- нужен работающий .htaccess.
     
  10. _DEN_

    _DEN_ DEN

    Публикаций:
    0
    Регистрация:
    8 окт 2003
    Сообщения:
    5.383
    Адрес:
    Йобастан
    r90

    Все хорошо кроме одного. Когда юзер будет заливать файлы POST-ами, фалы будут складироваться на проксю. А я хочу их прозрачно пересылать без промежуточного складирования.
     
  11. r90

    r90 New Member

    Публикаций:
    0
    Регистрация:
    26 ноя 2005
    Сообщения:
    898
    _DEN_
    А, точно. Ступил. Давно не связывался с этой моделью разработки веб-приложений, уже даже и забыл всю её убогость.