Назад | Перейти на главную страницу

Squid url_rewrite_program не работает

Я пишу модуль url_rewrite для squid на python (ОС: Ubuntu 13). Пока что код - это просто тест, который должен распечатать полученный стандартный ввод в файл:

#!/usr/bin/python

import sys,os

url = sys.stdin.read()

os.system('echo "%s" >> log.txt' % url)
sys.stdout.write(url)
sys.stdout.flush()

Когда я запускаю squid и запускаю запрос из моего браузера, подключенного к прокси, он не работает, и, проверяя журналы, я вижу некоторые связанные с этим ошибки:

системный журнал:

squid3: The redirector helpers are crashing too rapidly, need help!

cache.log

2013/09/30 14:51:44| WARNING: redirector #1 (FD 7) exited
2013/09/30 14:51:44| WARNING: redirector #2 (FD 9) exited
2013/09/30 14:51:44| WARNING: redirector #3 (FD 11) exited
2013/09/30 14:51:44| WARNING: redirector #4 (FD 13) exited
2013/09/30 14:51:44| Too few redirector processes are running
2013/09/30 14:51:44| storeDirWriteCleanLogs: Starting...
2013/09/30 14:51:44|   Finished.  Wrote 0 entries.
2013/09/30 14:51:44|   Took 0.00 seconds (  0.00 entries/sec).
FATAL: The redirector helpers are crashing too rapidly, need help!

Кто-нибудь сталкивался с этой проблемой и может придумать, как ее решить? С уважением.

Похоже на очень грубый пример. Тем не мение:

  1. Вы читаете и пишете только одну строчку. Squid требует, чтобы вы обработали столько строк, сколько необходимо.
  2. Файл конфигурации Squid содержит хороший пример того, как это сделать (задокументирован в squid.conf).
  3. Если вам нужен рабочий пример, я уже написал один из этих перенаправителей на python: http://code.google.com/p/squid-tagger/. Рад, если это поможет кому-нибудь, кроме меня.