amavis + SA, не отмечающий сообщения как спам

Если Вы застреваете с использованием IIS, используйте PyISAPIe вместо CGI, если Вы можете. Инструкции и ссылки для PyISAPIe ниже. Ваш веб-хост будет знать намного больше о расширениях ISAPI, если они будут управлять IIS, чем о Python, и они не должны знать много о Python с PyISAPIe.

НАМНОГО ЛУЧШИЙ СПОСОБ СДЕЛАТЬ ЭТО ИСПОЛЬЗУЕТ PyISAPIe, AN РАСШИРЕНИЕ ISAPI. PyISAPIe очень, намного быстрее, чем CGI на IIS7. То, что это делает, подобно mod_python на Apache. Домашняя страница проекта PyISAPIe имеет инструкции для установки Django с WSGI по PyISAPIe. Это принесет Вашей производительности до разумных скоростей для веб-сайта общественности/интенсивного трафика.

Установка Django в IIS+Python через среду CGI будет ужасно медленной для любого производственного использования. Вы никогда не должны использовать это для веб-сайта, на котором Вы ожидаете обслуживать больше чем горстку запросов в минуту. Это также ограничивает Вас сильно в том, что можно кэшировать в памяти в платформе кэширования Django, так как процесс приложения Django перезапущен с каждым новым запросом.

В нормальном веб-сервере как Apache, lighttpd, и т.д., с mod_python, интерпретатор Python, выполняющий процесс Django, остается в памяти и инициализируется с каждым новым рабочим потоком Apache, который обрабатывает много запросов со временем. Это означает, что из Python + Django не выходят и перезапускают для каждого нового запроса. В установке FastCGI веб-сервер (Apache или lighttpd, например) создает сокет (домен UNIX или TCP), через который это общается с приложением FastCGI (Ваше веб-приложение Django) по протоколу FastCGI. Так же для установок Прокси HTTP (они говорят HTTP вместо FastCGI). В среде CGI называют интерпретатор Python, который запускает приложение Django, полностью снова для каждого запроса, таким образом, приложение не может сохранить состояние через запросы в памяти и не может кэшироваться правильно нигде, но в базе данных.

Достаточно разглагольствования, если необходимо использовать IIS+CGI+Django, вот - то, как выполнить эту ужасную ужасную вещь: Используйте следующий код для создания собственного сценария CGI, который запускает приложение Django (это переводит между CGI и WSGI). Необходимо будет отредактировать сценарий немного, чтобы заставить его указать на приложение Django и код. Это - сценарий CGI, которому необходимо было бы передать запросы. Затем, необходимо передать/переписать все запросы сценарию CGI...

Под IIS6 Вам будет нужен mod_rewrite эквивалент как IISRewrite, который я думаю, не свободно и закрытый исходный код. Под IIS7 Microsoft наконец включала модуль перезаписи URL. Документация для него расположена здесь. Инструкции для создания переписывают правила в IIS7, здесь. Вы захотите передать все в целевом базовом URL, который будет обработан Вашим сценарием CGI.

3
задан 13 April 2017 в 15:14
2 ответа

Необходимо обеспечить более подробный вывод входа для решения этого: Остановите amavisd и перезапустите его в режиме отладки (amavisd debug, на Debian/Ubuntu это, вероятно, amavisd-new debug, но так как Вы упоминаете конфигурирование amavisd с amavisd.conf и нет /etc/amavis/conf.d/50-user, Я предполагаю, что Вы не находитесь на Debian/Ubuntu). В то время как Вы делаете это, Вы, вероятно, захотите отключить порт Postfix SMTP 25 слушателей на Ваших почтовых серверах внешние интерфейсы (можно всегда отправлять почту локально), или иначе Вы, вероятно, получите немного слишком много входа, поэтому определите местоположение тех, которые в /etc/postfix/master.cf и не прокомментируйте, соответствующие записи (не забывать postfix reload впоследствии).

Кроме того, чтобы не создавать помехи Вашему экрану, удалите $sa_debug сходя с Вашего amavisd.conf временно - но повторно включают его, если Вы не можете выяснить причину своей проблемы (и также попытаться проверить, почему автоизучение перестало работать).

Еще два комментария к Вашей конфигурации, которые действительно не связаны с Вашей проблемой:

  1. Набор $sa_kill_level_deflt кому: $sa_tag2_level_deflt - Ваша заключительная судьба спама D_PASS так или иначе.
  2. Набор $sa_tag_level_deflt кому: undef.

Комментарий направил на Dave: amavisd-новый не использует spamd по умолчанию, таким образом перезапущение spamd довольно бессмысленно. Кроме того, нет никакого способа, которым можно изменить путь amavisd-новые обработки сообщение данной категории содержания (здесь: CC_SPAM) из конфигурации Spamassassin.

6
ответ дан 3 December 2019 в 05:37

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

0
ответ дан 3 December 2019 в 05:37

Теги

Похожие вопросы