w sumie to siedze nad tym już od soboty i do teraz udało mi się coś takiego:
Kod
RewriteEngine On
RewriteCond %{HTTP_HOST} !=www.adres.pl #Nie zadziała gdy ktoś nie poda subdomeny
RewriteCond %{SCRIPT_FILENAME} .*php.* #Zadziałą tylko dla skryptów php
RewriteCond %{HTTP_HOST} ^(www\.)?(.+).adres.pl #nie wazne czy ktoś wpisze z "www" czy bez oraz zadziałą tylko jak ktos poda subdomene
RewriteRule .* index.php?subdomena=%2 [QSA] #przypisze subdomene do zmiennej subdomena (%2) oraz do poisze inne parametry ([QSA]) przekazywane do pliku
RewriteCond %{HTTP_HOST} !=www.adres.pl #Nie zadziała gdy ktoś nie poda subdomeny
RewriteCond %{SCRIPT_FILENAME} .*php.* #Zadziałą tylko dla skryptów php
RewriteCond %{HTTP_HOST} ^(www\.)?(.+).adres.pl #nie wazne czy ktoś wpisze z "www" czy bez oraz zadziałą tylko jak ktos poda subdomene
RewriteRule .* index.php?subdomena=%2 [QSA] #przypisze subdomene do zmiennej subdomena (%2) oraz do poisze inne parametry ([QSA]) przekazywane do pliku
Dzięku temu udają sie przypisania w postaci:
- http://www.su.adres.pl/index.php => http://www.adres.pl/index.php?subdomena=su;
- http://www.su.adres.pl/index.php?zmi=1 => http://www.adres.pl/index.php?subdomena=su&zmi=1;
- http://www.su.adres.pl/index.php?zmi=1&zmi2=2 => http://www.adres.pl/index.php?subdomena=su&zmi=1&zmi2=2;
Ogólnie działą ale jeszcze dwa przypadki które są ważne a ten kod ich nie rozwiązuje poprawnie:
- http://www.su.adres.pl/ => http://www.adres.pl/index.php
nie przekazało subdomeny - http://www.su.adres.pl/inny_plik.php?zmi=1&zmi2=2 => http://www.adres.pl/index.php?subdomena=su&zmi=1&zmi2=2;
chciałbym zeby prowadziało do inny_plik przyczyną jest to ze mamy RewriteRule .* ale nie umiałem inaczej
Dodatkowo ciekawi mnie:
RewriteRule [adres jakiego chcemy używać] [prawdziwy adres pliku]
ale jak rozumieć adres czy jest to http://www.adres.pl/index.php czy tylko index.php czy moż ejeszcze inaczej??
Bardzo prosze o pomoc