<?xml version="1.0" encoding="koi8-r"?>
<rss version="0.91">
<channel>
    <title>OpenForum RSS: И снова о редиректорах...</title>
    <link>https://www.opennet.dev/openforum/vsluhforumID12/5364.html</link>
    <description>Доброго времени суток!&lt;br&gt;Захотелось написать свой редиректор на perl&apos;е. Вкратце суть такова:&lt;br&gt;Есть в mysql базе табличка, в которой указаны ip-адреса, c которых можно использвоать инет. Сквид в числе параметров передает редиректору ip-адрес клиента, откоторого пришел запрос. Хочу, чтобы редиректор проверял если есть адрес клиента в базе, то ходи в нет, иначе ходи на другой адрес, где написано типа доступ запрещен.&lt;br&gt;Строго прошу не судить, т.к. с перлом до этого работать не приодилось, а с редиректорами темболее. Вот код:&lt;br&gt;&lt;br&gt;#!/usr/bin/perl&lt;br&gt;use DBI;&lt;br&gt;use DBI::DBD;&lt;br&gt;require &quot;/etc/squid/logger.cfg&quot;;&lt;br&gt;$dbh = DBI-&amp;gt;connect(&quot;DBI:mysql:$dbname:$dbhost:$dbport&quot;, $dbuser, $dbpass) or die &quot;Cannot connect to DataBase&quot;;&lt;br&gt;my $ips = $dbh-&amp;gt;selectall_hashref(&quot;SELECT cl_ip FROM auth;&quot;,1);&lt;br&gt;$&amp;#124;=1;&lt;br&gt;while (&amp;lt;&amp;gt;) &#123;&lt;br&gt;($url, $cl_ip, $ident, $method) = split;&lt;br&gt;if (exists $ips-&amp;gt;&#123;$cl_ip&#125;)&lt;br&gt; &#123;&lt;br&gt;  print &quot;$url $cl_ip $ident $method&#092;n&quot; ;&lt;br&gt; &#125;&lt;br&gt; else&lt;br&gt; &#123;&lt;br&gt;  print &quot;$red_url $cl_ip $ident $method&#092;n&quot; ;&lt;br&gt; &#125;&lt;br&gt;&#125;&lt;br&gt;$dbh-&amp;gt;disconnect;&lt;br&gt;&lt;br&gt;&lt;br&gt;По итогу</description>

<item>
    <title>И снова о редиректорах... (Senya88)</title>
    <link>https://www.opennet.dev/openforum/vsluhforumID12/5364.html#4</link>
    <pubDate>Wed, 30 May 2012 12:54:44 GMT</pubDate>
    <description>&amp;gt; Вот кусок из squid.conf &lt;br&gt;&amp;gt; ....&lt;br&gt;&amp;gt; acl privnet src 172.16.22.0/255.255.255.0 &lt;br&gt;&amp;gt; .....&lt;br&gt;&amp;gt; http_access allow privnet &lt;br&gt;&amp;gt; А страница, на которую делается редирект - на самом шлюзе лежит.&lt;br&gt;&amp;gt; про отладочные print&apos;ы сегодня попробую... посмотрю, что пишет...&lt;br&gt;&lt;br&gt;Интересно узнать, получилось у вас допилить скрипт до работоспособного или нет?&lt;br&gt;</description>
</item>

<item>
    <title>И снова о редиректорах... (BaldyMan)</title>
    <link>https://www.opennet.dev/openforum/vsluhforumID12/5364.html#3</link>
    <pubDate>Tue, 29 Jan 2008 23:43:03 GMT</pubDate>
    <description>Вот кусок из squid.conf&lt;br&gt;&lt;br&gt;....&lt;br&gt;acl privnet src 172.16.22.0/255.255.255.0&lt;br&gt;.....&lt;br&gt;http_access allow privnet&lt;br&gt;&lt;br&gt;А страница, на которую делается редирект - на самом шлюзе лежит.&lt;br&gt;&lt;br&gt;про отладочные print&apos;ы сегодня попробую... посмотрю, что пишет...&lt;br&gt;</description>
</item>

<item>
    <title>И снова о редиректорах... (forfreeuse)</title>
    <link>https://www.opennet.dev/openforum/vsluhforumID12/5364.html#2</link>
    <pubDate>Tue, 29 Jan 2008 15:30:01 GMT</pubDate>
    <description>&amp;gt;Доброго времени суток! &lt;br&gt;&amp;gt;Захотелось написать свой редиректор на perl&apos;е. Вкратце суть такова: &lt;br&gt;&amp;gt;Есть в mysql базе табличка, в которой указаны ip-адреса, c которых можно &lt;br&gt;&amp;gt;использвоать инет. Сквид в числе параметров передает редиректору ip-адрес клиента, откоторого &lt;br&gt;&amp;gt;пришел запрос. Хочу, чтобы редиректор проверял если есть адрес клиента в &lt;br&gt;&lt;br&gt;Если ip вбил после запуска редиректора, то все правильно.&lt;br&gt;Редиректор при запуске зачитал список ip и по этому, один раз зачитанному списку и работает.&lt;br&gt;&lt;br&gt;&amp;gt;&#091;оверквотинг удален&#093;&lt;br&gt;&amp;gt;$dbh-&amp;gt;disconnect;&lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt;По итогу не могу понять где что неправильно... Реально добавил руками в &lt;br&gt;&amp;gt;табличку свой ip_адрес и при попытке пойти на какую-нибудь страницу почему-то &lt;br&gt;&amp;gt;срабатывает ветка в условии, которая идёт по else. Хотя (может это &lt;br&gt;&amp;gt;глюк) иногда один раз пропускает по нормальному, а при попытке пойти &lt;br&gt;&amp;gt;дальше происходит редирект на страницу запрещения доступа... &lt;br&gt;&amp;gt;Буду рад, если укажете, в чем моя ошибка и выскажете прежложения по &lt;br&gt;&amp;gt;улучшению. &lt;br&gt;&lt;br&gt;</description>
</item>

<item>
    <title>И снова о редиректорах... (Andrey Mitrofanov)</title>
    <link>https://www.opennet.dev/openforum/vsluhforumID12/5364.html#1</link>
    <pubDate>Tue, 29 Jan 2008 14:37:01 GMT</pubDate>
    <description>&amp;gt;Захотелось написать свой редиректор на perl&apos;е. Вкратце суть такова: &lt;br&gt;&amp;gt;Есть в mysql базе табличка, в которой указаны ip-адреса, c которых можно &lt;br&gt;&amp;gt;использвоать инет. Сквид в числе параметров передает редиректору ip-адрес клиента, откоторого &lt;br&gt;&amp;gt;пришел запрос. Хочу, чтобы редиректор проверял если есть адрес клиента в &lt;br&gt;&amp;gt;базе, то ходи в нет, иначе ходи на другой адрес, где &lt;br&gt;&amp;gt;написано типа доступ запрещен. &lt;br&gt;&lt;br&gt;А в .../squid/errors/Russian-koi8-r/ERR_ACCESS_DENIED или около того текст или редирект написать, а адрес проверять &quot;acl ... src&quot;+http_access ?&lt;br&gt;&lt;br&gt;&amp;gt;По итогу не могу понять где что неправильно...&lt;br&gt;&lt;br&gt;Вставь отладочные print-ы во временный файл и отлаживай.&lt;br&gt;</description>
</item>

</channel>
</rss>
