<?xml version="1.0" encoding="koi8-r"?>
<rss version="0.91">
<channel>
    <title>OpenForum RSS: Как заставить Apache ходить в инет с IP виртуальных хостов?</title>
    <link>https://www.opennet.ru/openforum/vsluhforumID8/4156.html</link>
    <description>Есть Апач на сервере с двумя сетевыми интерфейсами (один в инет, другой в локалку), на них разные IP адреса.&lt;br&gt;На одном внешнем несколько алиасов.&lt;br&gt;&lt;br&gt;На машине имеем некоторое количество виртуальных хостов с разными IP адрессами.&lt;br&gt;Так вот, не зависимо с какого виртуального хоста скрипт на PHP выполняет запрос fopen(), всегда в логах стороннего сервера светится основной IP.&lt;br&gt;&lt;br&gt;Так вот вопрос: Как заставить Apache ходить в инет с IP виртуальных хостов?</description>

<item>
    <title>Как заставить Apache ходить в инет с IP виртуальных хостов? (zeiter)</title>
    <link>https://www.opennet.ru/openforum/vsluhforumID8/4156.html#15</link>
    <pubDate>Fri, 14 Jan 2011 08:20:47 GMT</pubDate>
    <description>&lt;br&gt;&amp;gt; Боюсь что нет. Беглый анализ документации по четвертой версии PHP не выявил &lt;br&gt;&amp;gt; таких возможностей. Возможно это можно решить более тонкой настройкой Апача, но &lt;br&gt;&amp;gt; я таких методов не знаю.&lt;br&gt;&lt;br&gt;Хм, в ветке 5.2.x и 5.2.x в этом плане так же никаких изменений за все это время так и не произошло?&lt;br&gt;</description>
</item>

<item>
    <title>Как заставить Apache ходить в инет с IP виртуальных хостов? (zeiter)</title>
    <link>https://www.opennet.ru/openforum/vsluhforumID8/4156.html#14</link>
    <pubDate>Thu, 13 Jul 2006 08:25:01 GMT</pubDate>
    <description>&amp;gt;Боюсь что нет.&lt;br&gt;&lt;br&gt;Спасибо и на этом</description>
</item>

<item>
    <title>Как заставить Apache ходить в инет с IP виртуальных хостов? (Xela)</title>
    <link>https://www.opennet.ru/openforum/vsluhforumID8/4156.html#13</link>
    <pubDate>Thu, 13 Jul 2006 08:09:40 GMT</pubDate>
    <description>&amp;gt;Что не совсем подходит. Может есть еще варианты? &lt;br&gt;&lt;br&gt;Боюсь что нет. Беглый анализ документации по четвертой версии PHP не выявил таких возможностей. Возможно это можно решить более тонкой настройкой Апача, но я таких методов не знаю.&lt;br&gt;&lt;br&gt;</description>
</item>

<item>
    <title>Как заставить Apache ходить в инет с IP виртуальных хостов? (zeiter)</title>
    <link>https://www.opennet.ru/openforum/vsluhforumID8/4156.html#12</link>
    <pubDate>Thu, 13 Jul 2006 07:52:04 GMT</pubDate>
    <description>Идея сработала, ура :))&lt;br&gt;Это уже ближе и интереснее.&lt;br&gt;&lt;br&gt;Версии PHP 4.4.2 (Server API Apache) и 5.1.2 (Server API CGI)&lt;br&gt;&lt;br&gt;Только, вот так сразу использовать и не получится.&lt;br&gt;Нужно получается, сделать так:&lt;br&gt;&lt;br&gt;1) На файерволе запретить все исходящие коннекты от IP сервера на внешние хосты по всем портам (это бред)&lt;br&gt;2) Разрешить fopen()&lt;br&gt;3) Разрешить на файерволе исходящие коннекты на локальные IP для пользователиских скриптов по порту 80.&lt;br&gt;4) Перевести пользователей на PHP5 (переписать скрипты).&lt;br&gt;&lt;br&gt;Что не совсем подходит. Может есть еще варианты?</description>
</item>

<item>
    <title>Как заставить Apache ходить в инет с IP виртуальных хостов? (Xela)</title>
    <link>https://www.opennet.ru/openforum/vsluhforumID8/4156.html#11</link>
    <pubDate>Thu, 13 Jul 2006 07:16:01 GMT</pubDate>
    <description>Какую версию PHP используете?&lt;br&gt;&lt;br&gt;В любом случае, что бы не дать в PHP возможность использовать fopen с обертками для URL надо в конфигурации PHP этого вируального хоста установить опцию PHP allow_url_fopen в FALSE.&lt;br&gt;&lt;br&gt;В версии PHP 5.0 поддерживаются контексты, и тогда, для того что бы fopen коннектился с определенного(алиасного IP например) надо сделать что-то типа:&lt;br&gt;&lt;br&gt;// connect to the internet using the &apos;192.168.0.100&apos; IP&lt;br&gt;$opts = array(&apos;socket&apos; =&amp;gt;&lt;br&gt;           array(&apos;bindto&apos; =&amp;gt; &apos;192.168.0.100:0&apos;));&lt;br&gt;// create the context...&lt;br&gt;$context = stream_context_create($opts);&lt;br&gt;&lt;br&gt;// ...and use it to fetch the data&lt;br&gt;echo file_get_contents(&apos;http://www.example.com&apos;, false, $context);&lt;br&gt;&lt;br&gt;Более подробно смотрите в документации по PHP</description>
</item>

<item>
    <title>Как заставить Apache ходить в инет с IP виртуальных хостов? (zeiter)</title>
    <link>https://www.opennet.ru/openforum/vsluhforumID8/4156.html#10</link>
    <pubDate>Thu, 13 Jul 2006 03:51:12 GMT</pubDate>
    <description>&amp;gt;&lt;br&gt;&amp;gt;Оговорюсь, что у меня Linux. Там маршрутизация более продвинутая, чем в FreeBSD. &lt;br&gt;&amp;gt;&lt;br&gt; &lt;br&gt;Это все правильно, все логично.&lt;br&gt;Но мне не это нужно.&lt;br&gt;&lt;br&gt;Когда скрипт на PHP с виртуального хоста с IP aaa.bbb.ccc.dd1 открывает соединение с другим сервером по 80 порту ( fopen(&apos;http://www.opennet.ru&apos;, &apos;r&apos;); )&lt;br&gt;&lt;br&gt;То в логах на сервере opennet.ru будет IP не виртуального хоста, а IP сервера aaa.bbb.ccc.ddd.&lt;br&gt;&lt;br&gt;Когда другой скрипт на PHP с виртуального хоста с IP aaa.bbb.ccc.dd2 открывает соединение с другим сервером по 80 порту ( fopen(&apos;http://www.opennet.ru&apos;, &apos;r&apos;); )&lt;br&gt;&lt;br&gt;То опять же в логах на сервере opennet.ru будет IP не виртуального хоста, а IP сервера aaa.bbb.ccc.ddd.&lt;br&gt;&lt;br&gt;А нужно чтобы там в логах были IP aaa.bbb.ccc.dd1 и aaa.bbb.ccc.dd2. Как это сделать?&lt;br&gt;&lt;br&gt;Иными словами скриптам на виртуальных хостах с IP aaa.bbb.ccc.dd1(!) и aaa.bbb.ccc.dd2(!) нужно запретить соединения на внешние адреса по порту 80.&lt;br&gt;</description>
</item>

<item>
    <title>Как заставить Apache ходить в инет с IP виртуальных хостов? (vvvua)</title>
    <link>https://www.opennet.ru/openforum/vsluhforumID8/4156.html#9</link>
    <pubDate>Wed, 12 Jul 2006 13:22:33 GMT</pubDate>
    <description>&amp;gt;Хм, что-то я не совсем понял. &lt;br&gt;&amp;gt;Но исходя из того, что написано здесь: http://www.opennet.ru/base/net/bsd_pbr_route.txt.html &lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt;Это немного другое. И не для нашего случая :( &lt;br&gt;Что там написано - возможно, что не для вас - надо подробнее смотреть.&lt;br&gt;&lt;br&gt;Оговорюсь, что у меня Linux. Там маршрутизация более продвинутая, чем в FreeBSD.&lt;br&gt;&lt;br&gt;&amp;gt;У нас один канал во внешку, один сервак, один шлюз провайдеровский. &lt;br&gt;&amp;gt;Один IP на интерфейсе и 5 алиасов к нему с виртуальными хостами &lt;br&gt;&amp;gt;на апаче. &lt;br&gt;&lt;br&gt;Ну? Всё правильно. Какая разница?&lt;br&gt;Конечно, пров мог нарушить правила и дать так:&lt;br&gt;сетка 1.1.1.0/29&lt;br&gt;пров 1.1.1.1/29&lt;br&gt;вы1 1.1.1.2/29&lt;br&gt;вы2 1.1.1.3/29&lt;br&gt;вы3 1.1.1.4/29&lt;br&gt;&lt;br&gt;И т.д.&lt;br&gt;Но Обычно, это делают сетями по 4 адреса. т.е. /30&lt;br&gt;первая сетка 1.1.1.0/30&lt;br&gt;пров 1.1.1.1/30&lt;br&gt;вы 1.1.1.2/30 gateway 1.1.1.1&lt;br&gt;&lt;br&gt;вторая сетка 1.1.4.0/30&lt;br&gt;пров 1.1.4.1/30&lt;br&gt;вы 1.1.1.4/30 gateway 1.1.4.1&lt;br&gt;&lt;br&gt;и т.д.&lt;br&gt;&lt;br&gt;в системе прописан только один шлюз - gateway 1.1.1.1&lt;br&gt;&lt;br&gt;Таким образом, я полиси строю так:&lt;br&gt;если коннект на 1.1.1.2 - то юзать шлюз 1.1.1.1&lt;br&gt;ес</description>
</item>

<item>
    <title>Как заставить Apache ходить в инет с IP виртуальных хостов? (zeiter)</title>
    <link>https://www.opennet.ru/openforum/vsluhforumID8/4156.html#8</link>
    <pubDate>Wed, 12 Jul 2006 10:29:45 GMT</pubDate>
    <description>&amp;gt;У меня это сделано с policy routing. &lt;br&gt;&amp;gt;на каждый ip - своя таблица маршрутизации &lt;br&gt;&lt;br&gt;Хм, что-то я не совсем понял. &lt;br&gt;Но исходя из того, что написано здесь: http://www.opennet.ru/base/net/bsd_pbr_route.txt.html&lt;br&gt;&lt;br&gt;Это немного другое. И не для нашего случая :(&lt;br&gt;У нас один канал во внешку, один сервак, один шлюз провайдеровский.&lt;br&gt;Один IP на интерфейсе и 5 алиасов к нему с виртуальными хостами на апаче.&lt;br&gt;&lt;br&gt;&lt;br&gt;</description>
</item>

<item>
    <title>Как заставить Apache ходить в инет с IP виртуальных хостов? (vvvua)</title>
    <link>https://www.opennet.ru/openforum/vsluhforumID8/4156.html#7</link>
    <pubDate>Tue, 11 Jul 2006 11:38:00 GMT</pubDate>
    <description>У меня это сделано с policy routing.&lt;br&gt;на каждый ip - своя таблица маршрутизации&lt;br&gt;&lt;br&gt;</description>
</item>

</channel>
</rss>
