Menu
RSS
Kategorie
Nejnovější články
- LíbímSeTi 2.0
- Filmové shrnutí ke konci roku
- Reklamy z té druhé stránky
- Palace Cinemas, můj druhý domov
- Nástrahy přírody
Nejnovější komentáře
| Last.fm - The Zero | |
|---|---|
| Pos | Interpret (skladby) |
| 1 | E-Type (2627) |
| 2 | Groove Coverage (2280) |
| 3 | Sylver (1393) |
| 4 | Ace of Base (1357) |
| 5 | MAYA (1046) |
| 6 | Solid Base (1014) |
| 7 | Cascada (984) |
| 8 | Verona (809) |
| 9 | Lewron Orchestra (767) |
| Last.fm - Borek | |
|---|---|
| Pos | Interpret (skladby) |
| 1 | Coldplay (782) |
| 2 | Jaromír Nohavica (422) |
| 3 | Louis Armstrong (323) |
| 4 | Pink Floyd (211) |
| 5 | Karel Kryl (202) |
| 6 | ABBA (173) |
| 7 | The Beatles (151) |
| 8 | Bobby McFerrin (113) |
| 9 | Anat Cohen (110) |

Správa domén 3. řádu pomocí mod_rewrite
Ještě nedávno jsem byl, co se týče mod_rewrite, úplným nováčkem a ani teď nepovažuji své znalosti za dostatečné, ale poslední práce mě donutila k používání něčeho jiného, než je přepisování 404 stránky.
V manuálu Apache je dynamické správě domén věnována celá dlouhá stránka, ale většina řešení se zabývá doménou druhého řádu (jen pro jistotu: http://treti.druhy.prvni/rad). S tím souvisí ještě jedna velká nevýhoda: Řešení nefunguje v souborech .htaccess umístěných v adresáři s webem, takže pokud zrovna nemáte svůj server, je vám to na nic. Přesto jej uvedu (zde v kombinaci s VirtualHost):
<VirtualHost *:80>
DocumentRoot C:/web/web/project/
ServerName domain.cz
ServerAlias domain.cz *.domain.cz
# #begin;
RewriteEngine on
RewriteMap lowercase int:tolower
# check the hostname is right so that the RewriteRule works
RewriteCond ${lowercase:%{SERVER_NAME}} ^[a-z-]+\.domain\.cz$
# concatenate the virtual host name onto the start of the URI
# the [C] means do the next rewrite on the result of this one
RewriteRule ^(.+) ${lowercase:%{SERVER_NAME}}$1 [C]
# now create the real file name
RewriteRule ^([a-z-]+)\.domain\.cz/?(.*) C:/web/web/project/index.php?domain=$1¶m=$1/$2
</VirtualHost>
Evidentně to tedy není zrovna postup, jakým byste si mohli spravovat skripty na nějakém hostingu.
I já jsem byl donucen opustit tento postup a vymyslet způsob, jak přepisovat poddomény jen z .htaccessu. Dlouho jsem se trápil s upravováním výše uvedené konfigurace, až jsem si nakonec řekl, že takhle to prostě nepůjde, že to musim přepsat. A ono to kupodivu šlo, a je to mnohem jednodušší. Má to ale nevýhodu: Zřejmě to stejně závisí na konfiguraci Apache, protože tady na tomto hostingu se mi to zprovoznit nepodařilo.
RewriteEngine On
# Prepiseme domeny tretiho radu na ridici skript
RewriteCond %{HTTP_HOST} !^(www\.)?domain\.cz
RewriteRule ^([a-z0-9:/\-]*)$ /index.php?domain=%{HTTP_HOST}¶m=$1 [L,QSA]
To je trochu jednodušší, ne? (Všimněte si regulárního výrazu na posledním řádku, možná bude potřeba upravit podle potřeby)
Zařazeno do kategorie Webdesign.
Předchozí: Profilování PHP (APD vs. XDebug)
Následující: Kopírovat zdrojáky se nevyplatí
Komentáře
Nikdo ještě nekomentoval. Buď máte fakt rychlou RSS čtečku, nebo jste právě přečetli něco, co nikomu nestojí ani za trochu snahy.