� ������� ����� �� ������������� � �������� ������ mod_rewrite. � �������, ������� ��� ����������, �� ������������ �����������, ������� � ���������� ������ �������� ���������: "���� ���-�� �������� �������� ������ � ����� .htaccess, �������� ������, ����������, ��� ������ � ����� ��������".��� "�������" ���������, �� ���� ������ ������� ��������� ��������� �� ������. �������, ��� mod_rewrite �������� �������, ������� ������������� "���������� �� �������� �������� ������������� ��������� ������������� URL-��".
�� ����� ������������ "�������" ��� ������ ��������� "������� �������". "�������" ����� ��������� ������ � ��� ������, ���� ����� ��� ����� �������� ��� �������.
���������: ������� ������ �������������� �������!
������� ��� ���� ������ (������ � ����� .htaccess):
RewriteEngine on
Options +FollowSymlinks
RewriteBase /
RewriteCond %{HTTP_USER_AGENT} ^EmailSiphon
RewriteRule ^.*$ - [F]
���������� ������ ���� ������� ���� �������� ��������� � ������ ����� ����������. �� ������� - ��������� "������ ����������", �� ���� ������ ������.
��������� ��� ������ ��������� ������ ���������� ������ ��� ������� ��������� "EmailSiphon" (������� ����� ��� ����-������). ������ ����� �������� ��������� �������� ������� � ��������� ��� �������.
������:
RewriteCond %{HTTP_USER_AGENT} ^EmailSiphon
������� �� ���� ������:
��������� (��������): RewriteCond
����������� ������: %{HTTP_USER_AGENT}
������� �������: ^EmailSiphon
����������� ������ � ���������� �������, ������� ����� ���� �������� � ����� �����: "% {���_����������}".
������� ������� � ���������� ���������. ��� ����� ������� ��������� ���� ����� ����������� ���������� ��������� ��� �����.
���������� ���������
���������� ��������� � ��� ��������, ����������� ������ ������ ��� ������ � ����������� ����� ������, ��������������� ����� ������� � �������� ������. ����� ����, �������������� ������� �� ������ � ������ ����������� ��������� �������� ��������� ������ � ���� ������� �����, ���������� ������ � ������ �� �������, ��������� ������ �� ������� � �.�. ������ ������� �� ��������, �� ������� �������� ��� ���������, �������� ������ ������� ������ � ������ ������, ��������������� ������� (�������), ���������� � ���������� ���������� ���������.
���������� ��������� ������� ����������, ����������� ����� ���������������� �� ������ ���������.
��������, ���������� ���������:
s/abc/xyz/g
������� ������ "abc", �� ������ "xyz" �� ���� ������.
��� ������� ����� �������� ������ ��������� � ���������� ���������:
. (�����) - ����� (����� ������)
| - ����������� (�� ���� /abc|def/)
* - ������������� (��������� ����� �����)
^ $ - ����� ������
s - �������� (string1 �������� �� string2)
g - ����������� (������ �� ����� ������)
���������� ��������� �������������� � ������� ���� ��������� � ������ "�������" ��������. ��� �� �������� ��������� ������, � ������������ ������� ����������, �������� ������� ���������������� ���� Perl ��� PHP, � ����� ���������� ����������� (Emacs).
���� �������� � ����� ���������� ��������� � ������ mod_rewrite, �� ��� ������������ � ���������� RewriteRule � RewriteCond.
"^" ���������� ������ ������. �� ����� �������, ��� UserAgent ������ ���������� �� ������ "EmailSiphon" � �� � ���� ������� ("NewEmailSiphon", ��������, �� ������� ��).
��, ��������� ������ ���������� ��������� �� �������� ������ "$" (����� ����� ������), UserAgent ��� �� ����, ��������, "EmailSiphon2".
��������� ������ ������ �������:
RewriteRule ^.*$ - [F]
����������, ��� ������ ����� ������, ����� ����� �������� ������.
���������� ��������� "^.*$" ��������: "������ �� ���� ������ ��������".
����� "." � ���������� ��������� � ���� ������ (�������������� ����), ���������� ����� ��������� ������.
"*" �������� ��, ��� ������ ����� ����������� �������������� ���������� ���. � ���� ������, ���������� �� ����� ������������ �����, ����� ������ ������.
"EmailSiphon", �������, �� ������������ �������� �������. ������ ��������� ���� ����� ��������� - "ExtractorPro". �������� �� ����� ��������� ������ � ����� ������. � ����� ������ ��� ���������� ��� ���� �������.
������ ���� .htaccess ����� ��������� ���:
RewriteEngine on
Options +FollowSymlinks
RewriteBase /
RewriteCond %{HTTP_USER_AGENT} ^EmailSiphon [OR]
RewriteCond %{HTTP_USER_AGENT} ^ExtractorPro
RewriteRule ^.*$ - [F]
������ �������� [OR] (� ������ ������ RewriteCond) ���������� "������". ���������� ��� ��������� �����:
NC � �� ��������� ������� ����.
OR � �������� "��� ��������� �������".
������ NC ��������� ������������ ������� ���� � ������� �������. ��������:
RewriteCond %{HTTP_USER_AGENT} ^emailsiphon [NC]
��� ������ ����������, ��� � "emailsiphon" � "EmailSiphon" ����� �������� ��� ���������� ���������.
�� ������ ������������ ����� ��������� �������, �������� �� ��������.
RewriteCond % {HTTP_USER_AGENT} ^EmailSiphon [NC, OR]
RewriteCond % {HTTP_USER_AGENT} ^ExtractorPro
��� ������� ����������� �� ����� �������. ����� �������, �� ������ ����������� 10, 100, 1000 ��� ����� ��������� �������� ���������. ����������� ���� 1000 ������� � ������ ������ �������� ������� � ������������ ����� .htaccess.
� �������������� ������� ������������ ���������� ���������� HTTP_USER_AGENT. ���������� ����� ������ ����������:
REMOTE_HOST
REMOTE_ADDR
��������, ���� �� ������ ������������� ����� ���������� � www.site.ru, �� ������ ������������ ���������� ���������� REMOTE_HOST ����� �������:
RewriteCond % {REMOTE_HOST} ^www.site.ru$
RewriteRule ^.*$ - [F]
���� �� ������ ������������� ������������ IP �����, ������� ����� ��������� ���:
RewriteCond % {REMOTE_ADDR} ^212.37.64.10$
RewriteRule ^.*$ - [F]
� ���������� ��������� �� �������� ������� � ������� IP ������ ����� ������������ ��������� � �������� �����.
����� ����� ��������� ����� ��������:
RewriteCond %{REMOTE_ADDR} ^212.37.64.
RewriteRule ^.*$ - [F]
���� ������ ����������, ��� ����� ������������� �������� IP ������� � 212.37.64.0 �� 212.37.64.255.
� ��� ��������� ������� ��� �������� ������������� ������ (������� ����� ���� � ��������� �����):
RewriteCond %{REMOTE_ADDR} ^212.37.64
RewriteRule ^.*$ - [F]
��������, ������!
���� �� ����� � ���������� ��������� "^212.37.64" ������ "^212.37.64." (� ������ � �����), �� ���� �� ��� ��� �� ����� ������, � ����� �� ��������� �� �� ����� IP ������?
�� ��� ��� �� ������������ ������� RewriteRule, ������� ���������� ��������� �� �������. � ������� ����� ���������� �� ��������������, ��� ����� ������������ RewriteRule ��� ������������� ����������� � ������������ ������.
]]>