Изрази шаблони в .htaccess
Много често командите в .htaccess използват т.нар. regular expressions, изрази шаблони, спрямо които се сравняват низове - URL aдреси, имена или разширения на файлове и др. Тези изрази дават възможност командите да се прилагат само в определени случаи - напр. достъпът до файлове-снимки да е разрешен само за страници от Вашия сайт, пренасочване на адресите на определени страници и т.н.
Букви и цифри в изразите шаблони имат обичайното си значение, но някои символи имат специфична употреба:
Символ | Значение | Пример |
---|---|---|
.(точка) | който и да е символ | .а може да бъде "1а", "fa", ".a", или например "/a" |
*(звезда) | нула или повече от предния символ | a* може да бъде "", "а", "аа", "ааа" и т.н. |
+ (плюс) | един или повече от предния символ | a+ отговаря на "а", "аа", "ааа", "аааааа" и т.н. |
? (въпросителен) | нула или повече от предния символ | е? отговаря на "" (т.е. нищо) или на "е" |
\ (обратна наклонена черта) | използва се пред символ със специално значение като разгледаните до тук ".", "*", "?" и др. | \. - използва се на мястото на точка(.), защото самата точка би имала значение на който и да е символ |
^ | обозначава началото на низ | ^http://www\.example\.com отговаря на който и да било адрес, който започва с http://www.example.com, напр. на http://www.example.com/images/catty.png |
$ (долар) | символизира край на низ | .*\.gif$ отговаря на всеки низ, който завършва с .gif |
[] (квадратни скоби) | отговаря на който и да е от включените в скобите символи | [abc]+ отговаря на "a", "b", "c" или която и да е комбинация от тях, напр. "aabcbcbcba" |
() (малки скоби) | групиране и запомняне на открития съвпадащ низ като специална променлива - по реда на откриване имената на променливите са $1, $2, $3 и т.н. | (.+)/users/(.+) би могло да отговаря на 2009/users/arlecino. В такъв случай "2009" ще бъде запазено като $1, а "arlecino" - като $2 |
Конкретни примери за употреба на изрази шаблони ще намерите в следващите страници.
Ако решите, че "как се прави сайт" ръководството може да бъде полезно и за други хора, моля гласувайте за сайта: