Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [subdomeny] Przekierowanie do katalogu
vi-valdi
post
Post #1





Grupa: Zarejestrowani
Postów: 37
Pomógł: 0
Dołączył: 9.11.2003
Skąd: Kraków

Ostrzeżenie: (0%)
-----


Prosę o pomoc w następującej sprawie:

Dwie domeny np. adres1.pl i adres2.pl wskazują jeden serwer wirtualny.
Dodatkowo każda subdomena (dowolny_string.adres1.pl itd) od powyższych domen wskazuje na ten sam serwer. W katalogu głównym serwera umieszczam plik index.php

[php:1:b12ba1219c]<?php
if ($GLOBALS["HTTP_HOST"] == "www.adres1.pl") { $url = "adres1/"; }
elseif ($GLOBALS["HTTP_HOST"] == "adres1.pl") { $url = "adres1/"; }
elseif ($GLOBALS["HTTP_HOST"] == "www.adres2.pl") { $url = "adres2/"; }
elseif ($GLOBALS["HTTP_HOST"] == "adres2.pl") { $url = "adres2/"; }
else { $url = "blad.php"; }
Header ("Location: $url");
?>[/php:1:b12ba1219c]

Czy ktoś ma pomysł jak napisać skrypt, żeby każdy adres z subdomeną wskazywał na katalog właściwy dla jej domeny, wtedy niepotrzemne były by warunki:

[php:1:b12ba1219c]<?php
if ($GLOBALS["HTTP_HOST"] == "www.adres1.pl") { $url = "adres1/"; }
elseif ($GLOBALS["HTTP_HOST"] == "www.adres1.pl") { $url = "adres1/"; }
?>[/php:1:b12ba1219c]

Jeżeli namieszałem i nie jasno przedstawiłem, to służę wyjaśnieniami.
Z góry dziekuję za wszelką pomoc.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 7)
seaquest
post
Post #2





Grupa: Przyjaciele php.pl
Postów: 790
Pomógł: 7
Dołączył: 6.02.2003
Skąd: Polska

Ostrzeżenie: (0%)
-----


jest sposób

[php:1:eabef09f6e]<?php
$address = parse_url($_SERVER["HTTP_HOST"]);

$host = str_replace(array("www.",".pl","",$address['host']);

Header("Location: {$host}/");

?>[/php:1:eabef09f6e]

aha i nie mowi sie dziekuje, tylko daje sie punkta ;-)
Go to the top of the page
+Quote Post
vi-valdi
post
Post #3





Grupa: Zarejestrowani
Postów: 37
Pomógł: 0
Dołączył: 9.11.2003
Skąd: Kraków

Ostrzeżenie: (0%)
-----


Dziękuję mówię bo jestem miły i uprzejmy, a punkta daję z założenia.
Jeden juz masz bo sprawe uprościłeś, ale nie do końca o to mi chodziło.
Owszem www z adresu ładnie znika, ale co będzie gdy wpiszę np.
www.blebble.adres1.pl to wyskoczy mi strona informująca o błędzie.

? Jak zrobić aby usówać początkowy (dowolny) string z adresu aby pozostało tylko adres1.pl
Go to the top of the page
+Quote Post
seaquest
post
Post #4





Grupa: Przyjaciele php.pl
Postów: 790
Pomógł: 7
Dołączył: 6.02.2003
Skąd: Polska

Ostrzeżenie: (0%)
-----


ale jeżeli domena bleble.adres1.pl nie istnieje to wyswietli 404, a jezeli istnieje, to i tak otworzy sie katalog, dla ktorego przypisana jest domena
Go to the top of the page
+Quote Post
vi-valdi
post
Post #5





Grupa: Zarejestrowani
Postów: 37
Pomógł: 0
Dołączył: 9.11.2003
Skąd: Kraków

Ostrzeżenie: (0%)
-----


OK. Wyjaśnię najprościej jak się da.

www.adres1.pl
bleble.adres1.pl
blabal.adres1.pl
dowolny_string.adres1.pl
...
www.dowolny_string.adres1.pl , ... itd

ma wskazywać na jeden katalog: adres1, a

www.adres2.pl
bleble.adres2.pl
blabal.adres2.pl
dowolny_string.adres2.pl
...
www.dowolny_string.adres2.pl , ... itd

ma wskazywać na jeden katalog: adres2

Chodzi o to żeby nie trzeba było dla każdej możliwej subdomeny wpisywac warunku tylko zrobić to raz hurtowo.
Go to the top of the page
+Quote Post
seaquest
post
Post #6





Grupa: Przyjaciele php.pl
Postów: 790
Pomógł: 7
Dołączył: 6.02.2003
Skąd: Polska

Ostrzeżenie: (0%)
-----


kod

[php:1:7a0d8d8484]
<?php

$address = parse_url($_SERVER["HTTP_HOST"]);

$host = explode(".",$host);
$max = count($host)-2;
$head = $host[$max];
Header("Location: {$head}/");

?>[/php:1:7a0d8d8484]

teraz to gosc moze nawet wpisac ble.ble.ble.ble.adres1.pl albo moze com ;-)
Go to the top of the page
+Quote Post
flegmucha
post
Post #7





Grupa: Zarejestrowani
Postów: 12
Pomógł: 0
Dołączył: 15.11.2003
Skąd: Grajewo

Ostrzeżenie: (0%)
-----


A może by tak skorzystać ze switch($HTTP_HOST) ?
Go to the top of the page
+Quote Post
enceladus
post
Post #8





Grupa: Zarejestrowani
Postów: 127
Pomógł: 0
Dołączył: 19.11.2003
Skąd: Poznań

Ostrzeżenie: (0%)
-----


A po co zaprzęgać do tego php - nie lepiej zrobić to na poziomie konfiguracji virtualek w apache, ewentualnie przez mod_rewrite (IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif) ?
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 23.08.2025 - 10:17