![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 15 Pomógł: 0 Dołączył: 23.07.2008 Ostrzeżenie: (0%) ![]() ![]() |
Witam,
piszę stronę, która ma umożliwić użytkownikom tworzenie swoich stron. Strony maja być dostępne pod adresem www.uzytkownik.domena.pl. Pliki strony użytkownika znajdują się w katalogu www.domena.pl/litera/uzytkownik. Jak to zrobić? Czy wystarczy przekierowanie mod_rewrite? Jeśli tak, to jakie? Mam hosting, który umożliwia mi utworzenie tylko kilku subdomen, a więc opcja fizycznego ich tworzenia nie wchodzi w grę... Moduł mod_rewite jest aktywny. Moduł mod_vhost_alias prawdopodobnie nie jest aktywny- nie ma o nim w zmianki przy wywołaniu phpinfo() na docelowej stronie. Hosting w komercyjnej firmie. Będę wdzięczny za jak najbardziej szczegółową informację. |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 1 333 Pomógł: 137 Dołączył: 25.03.2008 Skąd: jesteś?? Ostrzeżenie: (0%) ![]() ![]() |
1. Istnieje tz?? Ona zawsze istnieje ponieważ jest włączony wildcard, jedyne co mi przychodzi do głowy to wykorzystanie error 404 lub sprawdzenie czy dany katalog istnieje. Gdy wystąpi błąd 404 czyli gdy nie będzie danego użytkownika zostanie on przekierowany na http://www.domena.pl a oto kod:
ErrorDocument 404 http://www.domena.pl 2. Podam przykład user.domena.pl przekierowuje na user.domena.pl/user ale w pasku nadal jest widoczny user.domena.pl więc użytkownik nawet dobrze nie wie gdzie jest. ;p 3. na wzorze wygląda to tak: RewriteCond %{HTTP_HOST} ^www.([a-z0-9]*).domena.pl$ [NC] RewriteCond %{REQUEST_URI} !^/users/[a-z0-9]*/www.*$ [NC] RewriteRule ^([a-zA-Z0-9/.?]*)$ /users/%1/www/$1 [L] Wpisując: www.USER.domena.pl/index.php?www=mega (dane np plik 'index.php?www=mega') Przenosi nas na: www.USER.domena.pl/USER/www/index.php?www=mega (kopiowane dane w tym przypadki 'index.php?www=mega') A w przeglądarce nadal widzimy: www.USER.domena.pl/index.php?www=mega Opisując powywszy przypadek po wpisaniu www.USER.domena.pl/index.php?www=mega znajdujemy się na stronie www.USER.domena.pl/ w katalogu USER/www/ z wybranym plikiem index.php i danymi get $GET['www']=mega. 4. To już jest trochę inny przypadek można zastosować taki skrypt: RewriteRule ^([a-zA-Z0-9/]*)$ /www/$1.php [L] Po wpisaniu www.domena.pl/kontakt trafimy na www.domena.pl/kontakt.php a w przeglądarce zostanie www.domena.pl/kontakt. Napisałem Ci wszystko o co się pytałeś, aby moja praca nie poszła na marne i byś wyniósł coś z tej lekcji zostawiam Ci posklejanie kodu w jedną całość. Jeśli Ci coś nie będzie działać pisz ale całości nie dostaniesz... (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) Ps Wiem jaki będzie tytuł mojego pierwszego artykułu na php.pl... (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) Edit: - Poprawiłem pkt 1 - Sporo literówek Ten post edytował ShadowD 2.12.2008, 16:44:03 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 11.10.2025 - 22:56 |