Posts

Showing posts with the label regex

Invalid HTTP_HOST header: '.your-domain.com'. The domain name provided is not valid according to RFC 1034/1035 (You may need to add u'domain.com' to ALLOWED_HOSTS.).

Image
I have several Django projects published and my mailbox and log files are constantly inundated with spider errors and hacking attempts to connect to my applications. These error messages have an email subject: "[Django] ERROR (EXTERNAL IP): Invalid HTTP_HOST ...".  So after spending a long time with this, I solved this problem with Apache (Require). The correct format for "Require" and "SetEnvIfExpr" is: ^[^_]+  would match a string of 1 or more character containing any character except underscore. <VirtualHost  xxx.xxx.xxx.xxx:80 >      ...     SetEnvIfNoCase Host "^[^_]+\.my-domain\.com" VALID_HOST     <Location / >         <RequireAll>             Require all granted             Require env VALID_HOST         </RequireAll>     </Location>     ... </VirtualHost> Or to be more ...

Python RegEx: практическое применение регулярок

Image
Рассмотрим регулярные выражения в Python, начиная синтаксисом и заканчивая примерами использования. Основы регулярных выражений Регулярные выражения в Python Задачи 1. Основы регулярных выражений Регулярками называются шаблоны, которые используются для поиска соответствующего фрагмента текста и сопоставления символов. Грубо говоря, у нас есть input-поле, в которое должен вводиться email-адрес. Но пока мы не зададим проверку валидности введённого email-адреса, в этой строке может оказаться совершенно любой набор символов, а нам это не нужно. Чтобы выявить ошибку при вводе некорректного адреса электронной почты, можно использовать следующее регулярное выражение: r '^[a-zA-Z0-9_.+-]+@[a-zA-Z0-9-]+(?:\.[a-zA-Z0-9-]+)+$' По сути, наш шаблон — это набор символов, который проверяет строку на соответствие заданному правилу. Давайте разберёмся, как это работает. Синтаксис RegEx Синтаксис у регулярок необычный. Символы могут быть как буквами или цифрами, так и метасимволами, которые зада...