Web development: Přepisujeme web pomocí mod_rewrite
| Zobrazit obsah | Zobrazit komentáře | Zobrazit pouze komentáře
|
Stručně jasně, jen pár regulárních výrazů, příznaků pravidel, příznaků podmínek, serverových proměnných a kódů přesměrovávacích hlaviček. Samozřejmě i nějaká ta ukázka. Článek v budoucnu rozšířím.
Syntaxe regulárních výrazů
^ začátek řetězce
$ konec řetězce
. jeden libovolný znak
(a|b) buď a NEBO b
(...) skupina znaků
[abc] znak z abc (a NEBO b NEBO c)
[^abc] jakýkoliv znak mimo abc
a? žádný nebo jeden výskyt znaku a
a* žádný nebo libovolný počet znaků a (iterace)
a+ jeden nebo libovolný počet znaků a (pozitivní iterace)
a{3} přesně tři znaky a
a{3,} tři a více znaků a
a{3,6} tři až šest znaků a
!(vyraz) negace výrazu
Kódy přesměrování - hlavičky
301 navždy odstraněno 302 dočasně odstraněno 403 přístup nepovolen 404 nenalezeno 410 neexistuje již dlouhou dobu
Příznaky pro přepisovací pravidla - RewriteRule
R[=kod] přesměrování na novou adresu (možnost použití hlavičky - výše) F přístup nepovolen G neexistuje již dlouhou dobu P proxy L poslední pravidlo - další už nebudou zpracována N další pravidlo (restart pravidel) C ? T=mime-type nastavi mime-typ dokumentu NS preskoci vnitrni sub-pozadavek NC pravidlo nebude case-sensitive QSA povoli retezec dotazu (napr. ?page=...) NE ? PT ? S=x preskoci nasledujicich x pravidel E=var:value nastavi promennou prostredi var na hodnotu value
Příznaky pro přepisovací podmínky - RewriteCond
NC podmínka nebude case-sensitive OR logické OR u podmínky - pravidlo bude aplikováno na více podmínek
Proměnné a příkazy
HTTP hlavičky
HTTP_USER_AGENT HTTP_REFERER HTTP_COOKIE HTTP_FORWARDED HTTP_HOST HTTP_PROXY_CONNECTION HTTP_ACCEPT
Požadavky (requesty)
REMOTE_ADDR REMOTE_HOST REMOTE_USER REMOTE_IDENT REQUEST_METHOD SCRIPT_FILENAME PATH_INFO QUERY_STRING AUTH_TYPE
Serverové hlavičky
DOCUMENT_ROOT SERVER_ADMIN SERVER_NAME SERVER_ADDR SERVER_PORT SERVER_PROTOCOL SERVER_SOFTWARE
Práce s časem
TIME_YEAR TIME_MON TIME_DAY TIME_HOUR TIME_MIN TIME_SEC TIME_WDAY TIME
Speciální
API_VERSION THE_REQUEST REQUEST_URI REQUEST_FILENAME IS_SUBREQ
Řídící direktivy
RewriteEngine RewriteOptions RewriteLog RewriteLogLevel RewriteLock RewriteMap RewriteBase RewriteCond RewriteRule
Ukázka
#
RewriteEngine on
#
RewriteCond %{HTTP_HOST} ^www\.domain\.com$ [NC,OR]
RewriteCond %{HTTP_HOST} ^domain\.com$ [NC]
#
RewriteRule ^blog/([A-Za-z0-9-_]+)/([A-Za-z0-9-_]+)/?$ index.php?modul=blog&category=$1&id=$2 [NC,L,QSA]
Článek postupně aktualizuji...
Komentáře k tématu 'Přepisujeme web pomocí...' (0 komentářů)
Ještě nebyl vložen žádný komentář. Pro vložení prvního komentáře klikněte zde.
Blog
