Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [php] 2 adresy z NO-IP i 2 strony na tym samym serwerku, jak rozpoznać skąd internauta wchodzi
alexsanetra
post 24.01.2007, 11:18:21
Post #1





Grupa: Zarejestrowani
Postów: 7
Pomógł: 0
Dołączył: 8.11.2006

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


Witajcie

Mam 2 adresy na NO-IP i chciałbym wykryć z którego adresu ktoś wchodzi. w zależności od tego został by przekierowany na odpowiednie strony mojego małego serwerka.

- "pierwszy adres na NO-IP" przekierowanie na "serwerek/~pierwsza_strona"
- "drugi adres na NO-IP" przekierowanie na "serwerek/~druga_strona"
(Obie strony na tym samym serwerku - to samo IP)

Prawdę powiedziawszy to nawet nie wiem czego szukać i jak mogła by się nazywać taka funkcja. Wiem, że coś takiego musi istnieć, bo widziałem, na różnych skryptach "statystykach", liczniki np kto wchodził na stronę z googla.

Próbowałem także szukać, w ustawieniach serwera NO-IP.COM czy czegoś takiego nie ma, ale jakoś nie znalazłem (jak już wcześniej powiedziałem, mogłem nie wiedzieć jak taka funkcja się nazywa).


Proszę o pomoc i sugestie, bo może można to "załatwić" inaczej (java?)

Ten post edytował alexsanetra 24.01.2007, 13:55:54


--------------------
Watashitachi omoide ni make tano ?
Go to the top of the page
+Quote Post
ChrisB
post 24.01.2007, 19:59:47
Post #2





Grupa: Zarejestrowani
Postów: 73
Pomógł: 4
Dołączył: 13.01.2004
Skąd: Bielsko-Biała

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


Zakładając że masz dostęp do serwera (a chyba masz skoro noip używasz;) , i zakładając że używasz apacha to:
Tworzysz virutalne hosty w apachu: (link dla wersji apache 2.0)

http://httpd.apache.org/docs/2.0/mod/core.html#virtualhost

Ten post edytował ChrisB 24.01.2007, 20:01:04


--------------------
gragieldowa.pl
Go to the top of the page
+Quote Post
Amorph
post 25.01.2007, 16:05:56
Post #3





Grupa: Zarejestrowani
Postów: 309
Pomógł: 0
Dołączył: 6.06.2006
Skąd: include('root/europe/ poland/szczecin.php');

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


A czy nie jest tak, jak konfiguruje w Apachu virtuala to muszę podać ip serwera... A jak podać ip serwera skoro jest dynamiczne questionmark.gif? (chyba po to no-ip.org)?
Można też:
  1. <?php
  2. $_SERVER['HTTP_HOST'];
  3. ?>

i na tej podstawie przekierowywać smile.gif
Go to the top of the page
+Quote Post
ChrisB
post 25.01.2007, 23:46:51
Post #4





Grupa: Zarejestrowani
Postów: 73
Pomógł: 4
Dołączył: 13.01.2004
Skąd: Bielsko-Biała

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


można i tak:)

ale w virtualnych hostach można również domeny podawać, niekoniecznie ip:

* The IP address of the virtual host;
* A fully qualified domain name for the IP address of the virtual host;
* The character *, which is used only in combination with NameVirtualHost * to match all IP addresses; or
* The string _default_, which is used only with IP virtual hosting to catch unmatched IP addresses.


--------------------
gragieldowa.pl
Go to the top of the page
+Quote Post
alexsanetra
post 26.01.2007, 11:02:11
Post #5





Grupa: Zarejestrowani
Postów: 7
Pomógł: 0
Dołączył: 8.11.2006

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


Gdzieś popełniłem błąd. Cały czas wybiera mi pierwszy adres. (to że z 2 adresów zrobiło się więcej nie ma znaczenia - robiłem to dla eksperymentów)


  1. <?php
  2. // Pierwszy adres
  3. if ($_SERVER['HTTP_POST']='jakas_nazwa1.no-ip.info'){ print ("Przypełzłeś z jakas_nazwa1.no-ip.info");}
  4.  
  5. // Drugi adres
  6. else if ($_SERVER['HTTP_POST']='jakas_nazwa2.no-ip.info'){ print ("Przypełzłeś z jakas_nazwa2.no-ip.info");}
  7.  
  8. // Trzeci adres
  9. else if ($_SERVER['HTTP_POST']='jakas_nazwa3.no-ip.info'){ print ("Przypełzłeś z jakas_nazwa3.no-ip.info");}
  10.  
  11. // Czwarty adres
  12. else if ($_SERVER['HTTP_POST']='jakas_nazwa4.no-ip.info'){ print ("Przypełzłeś z jakas_nazwa4.no-ip.info");}
  13.  
  14. // Piąty adres
  15. else if ($_SERVER['HTTP_POST']='jakas_nazwa5.no-ip.info'){ print ("Przypełzłeś z jakas_nazwa5.no-ip.info");}
  16.  
  17. // Jak by co
  18. else {print ("Cholera wie skąd Cię przyniosło");}
  19. ?>


przy switch ... case też wybierana była tylko pierwsza możliwość więc stale popełniam ten sam błąd mad.gif

Oczywiście potem (jak wybieranie zadziała, to chce użyć. Header('HTTP/1.1 301 Moved Permanently'); i zoptymalizuje to (by np ciągle nie wywoływać "$_SERVER['HTTP_POST']".

(jak zwykle rozłożyłem się na jakiejś banalnej sprawie mad.gif )

Ten post edytował alexsanetra 26.01.2007, 11:18:43


--------------------
Watashitachi omoide ni make tano ?
Go to the top of the page
+Quote Post
maryaan
post 26.01.2007, 12:22:34
Post #6





Grupa: Zarejestrowani
Postów: 380
Pomógł: 2
Dołączył: 5.01.2007

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


skad zes wytrzasnal ta zmienna $_SERVER['HTTP_POST']? zreszta i tak bedzie wybierana pierwsza mozliwosc bo zamiast porownania == uzywasz przypisania =

Ten post edytował maryaan 26.01.2007, 12:53:16


--------------------
Wybierasz się do Zakopanego? Odwiedź Willę Pod Górami. Następnym razem na pewno do niej wrócisz :)
Go to the top of the page
+Quote Post
alexsanetra
post 26.01.2007, 13:35:51
Post #7





Grupa: Zarejestrowani
Postów: 7
Pomógł: 0
Dołączył: 8.11.2006

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


Mój błąd ,oczywiście miało być $_SERVER['HTTP_HOST']. Wstyd przyznać, gapiłem się przez godzinę w ten skrypcik i nie widziałem tak oczywistej rzeczy, szkoda, że nie piłem wtedy piwka, bo bym zrzucił to na "pomroczność jasną"

Dzięki wszystkim, którzy pomogli - w sprawie, która jak zwykle okazała się banalna blinksmiley.gif


Tak to powinno wyglądać (z moimi adresami działa), może komuś się przyda.
  1. <?php
  2. $padres = $_SERVER['HTTP_HOST'];
  3.  
  4. if ($padres=='jakas_nazwa1.no-ip'){
  5. $adres = 'http://adres_do_przekierowania1/';
  6. Header('HTTP/1.1 301 Moved Permanently');
  7. Header('Location: '.$adres);}
  8.  
  9. else if ($padres=='jakas_nazwa2.no-ip'){
  10. $adres = 'http://adres_do_przekierowania2/';
  11. Header('HTTP/1.1 301 Moved Permanently');
  12. Header('Location: '.$adres);}
  13.  
  14. ...
  15. // ewentualne kolejne warunki
  16. ...
  17.  
  18. // Przekierowanie do strony głównej - na wszelki wypadek, czy to jest potrzebne tego nie wiem.
  19. // u mnie skrypt jest pod 'index.php' a pod 'index1.php' strona serwerka
  20. else {
  21. $adres = 'http://strona_glowna_serwerka/index1.php';
  22. Header('HTTP/1.1 301 Moved Permanently');
  23. Header('Location: '.$adres);}
  24. ?>


Ten post edytował alexsanetra 26.01.2007, 15:55:30


--------------------
Watashitachi omoide ni make tano ?
Go to the top of the page
+Quote Post

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

 



RSS Wersja Lo-Fi Aktualny czas: 18.07.2025 - 02:43