Корректные «чистые» URL на nginx для Drupal

Запишу, чтобы самому же не забыть в следующий раз. Почти все конфиги для поддержки «чистых» URL в nginx для адекватной работы Drupal — неправильные. Точнее, в некоторых старых этот момент учтен (которые через «if (!-e $request_filename)» и т.п. сделаны), а в новых — красивых и цивильных — нет. В частности — в том, который в FAQ самого nginx дается. Корень зла в том, что Друпалу в запросе передается URI целиком вместе с первым слэшем, а это — неправильно. Т.е. надо передавать не q=/node/1, а q=node/1. Самое печальное, что в .htaccess по умолчанию, который идет в комплекте, правила тоже неправильные: «RewriteRule ^(.*)$ index.php?q=$1 [L,QSA]» вместо «RewriteRule ^/(.*)$ index.php?q=$1 [L,QSA]». При этом все работает нормально, а косяки вылезают, например, при создании мультиязычного сайта — на всех языках, кроме default ничего не открывается — page not found.

Соответственно, достаточно вставить маленький rewrite в location @drupal в описании сервера для nginx’а:

rewrite        ^/(.*)$          $1  break;
fastcgi_param  QUERY_STRING     q=$uri&$args;

И все тут же становится хорошо…

То ли DDoS, то ли спам…

Уже второй день валят кучи спама на адреса в этом домене. Валят достаточно по-умному: по куче коннектов в секунду, но с разных адресов, а после отлупа — ждут около 30 секунд и только потом соединяются с этого же адреса. Можно было бы подумать, что спам, но идет на совершенно идиотские адреса, тоннами, только на этот домен и совершенно тупо — отрубается уже на уровне проверки домена отправителя в HELO и т.п. Так что наверное все-таки DDoS… Но зачем? Странно как-то…
Заметил поздно, а до того мой несчастный хилый VDS тормозил и страдал. Теперь заблочил около 3 тыс. адресов ботнета и думаю — чего теперь делать. Глупость какая-то…