PHP / Ruby Captive Portal первый домен кажется кэшированным

Я создал портал с Iptables

Я использую то, что многие используют: пользователи могут запрашивать DNS, пакет помечен как 99. 99 означает, что нет интернета, иначе у пользователя нет доступа.

Когда пользователь посещает страницу при посещении, например, переполнения стека. Пользователь получает отказ от ответственности. Он / она нажимает хорошо. Случилось так, что сервер выполняет следующие правила:

`sudo /sbin/iptables -t mangle -I captivePortal 1 -m mac --mac-source {$mac} -j RETURN`;
`sudo /sbin/iptables -t mangle -I captivePortal 1 -s {$_SERVER['REMOTE_ADDR']} -j RETURN`;

Что я пробовал:

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

Настройте apache2 с помощью php, переписав все в php. добавлены метатеги для предотвращения кеширования в браузере, но результат тот же. оригинальный домен перенаправляет на отказ от ответственности всегда, но другие сайты в порядке.

Чего я хочу достичь

Пользователи должны нажать принять на отказ от ответственности, прежде чем они смогут использовать WIFI.

Изменить: Перезагрузка apache2 решает эту проблему.

0

Решение

Используется rmtrack как описано здесь: http://www.andybev.com/index.php/Using_iptables_and_PHP_to_create_a_captive_portal

/usr/sbin/conntrack -L \
|grep $1 \
|grep ESTAB \
|grep 'dport=80' \
|awk \
"{ system(\"conntrack -D --orig-src $1 --orig-dst \" \
substr(\$6,5) \" -p tcp --orig-port-src \" substr(\$7,7) \" \
--orig-port-dst 80\"); }"
1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]