Foros del Web » Programando para Internet » PHP »

averiguar host de una $url (incluso subdominios)

Estas en el tema de averiguar host de una $url (incluso subdominios) en el foro de PHP en Foros del Web. Pues necesito sacar el servidor/host principal de una url, que puede ser de diferentes formas: servidor.com/lo/que/sea sub.servidor.com/lo/que/sea sub.sub.servidor.com/lo/que/sea para las del primer tipo bastaria con ...
  #1 (permalink)  
Antiguo 07/08/2012, 16:37
 
Fecha de Ingreso: agosto-2012
Mensajes: 16
Antigüedad: 11 años, 8 meses
Puntos: 0
averiguar host de una $url (incluso subdominios)

Pues necesito sacar el servidor/host principal de una url, que puede ser de diferentes formas:

servidor.com/lo/que/sea
sub.servidor.com/lo/que/sea
sub.sub.servidor.com/lo/que/sea

para las del primer tipo bastaria con

Código PHP:

 $servidor 
parse_url($url);
 
 
$servidor $servidor["host"]; 
el problema viene con lso demas tipos de urls, ya que considera host todo lo anterior a la primera / (luego de http://, si lo incluye)

estoy mirando la forma de mostrar "servidor.com" en todos los casos, pense en contar el numero de veces que la cadena lleva un "." con substr_count, para asi saber si se trata de un subdominio, ya que si hay mas de un punto estamos ante uno de los casos

pero ahi me he atascado, alguna idea?
  #2 (permalink)  
Antiguo 07/08/2012, 16:45
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: averiguar host de una $url (incluso subdominios)

¿Atascado en que? :pensando.

La idea es clara y ya la tienes, ¿que procede?
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 07/08/2012, 16:46
Avatar de kendall00  
Fecha de Ingreso: septiembre-2011
Ubicación: $Ubicacion => ['Costa Rica'];
Mensajes: 85
Antigüedad: 12 años, 7 meses
Puntos: 5
Respuesta: averiguar host de una $url (incluso subdominios)

Con este codigo:
Código PHP:
Ver original
  1. $host = $_SERVER['HTTP_HOST'];
  2. $page = $_SERVER['REQUEST_URI'];
  3. $url = 'http://'.$host.$page;
  4. #Decides que hacer con $url, ejemplo:
  5. echo $url;
El valor de $url es el valor de la URL completa actual incluso con http://

Saludos!
__________________
El limite es la imaginacion... con Dios todo es posible.
  #4 (permalink)  
Antiguo 07/08/2012, 16:57
 
Fecha de Ingreso: agosto-2012
Mensajes: 16
Antigüedad: 11 años, 8 meses
Puntos: 0
Respuesta: averiguar host de una $url (incluso subdominios)

Cita:
Iniciado por pateketrueke Ver Mensaje
¿Atascado en que? :pensando.

La idea es clara y ya la tienes, ¿que procede?

en como eliminar los subdominios de la url
  #5 (permalink)  
Antiguo 07/08/2012, 16:58
 
Fecha de Ingreso: agosto-2012
Mensajes: 16
Antigüedad: 11 años, 8 meses
Puntos: 0
Respuesta: averiguar host de una $url (incluso subdominios)

Cita:
Iniciado por kendall00 Ver Mensaje
Con este codigo:
Código PHP:
Ver original
  1. $host = $_SERVER['HTTP_HOST'];
  2. $page = $_SERVER['REQUEST_URI'];
  3. $url = 'http://'.$host.$page;
  4. #Decides que hacer con $url, ejemplo:
  5. echo $url;
El valor de $url es el valor de la URL completa actual incluso con http://

Saludos!
no trabajo con la url actual, si no con urls enviadas a traves de $_post




No puedo editar mi primer post, pero lo que quiero conseguir en cada uno de los 3 casos es mostrar unicamente "servidor.com"

servidor.com/lo/que/sea
sub.servidor.com/lo/que/sea
sub.sub.servidor.com/lo/que/sea

en el segundo y tercer caso el parse_url [host] muestra sub.servidor.com y sub.sub.servidor.com
  #6 (permalink)  
Antiguo 07/08/2012, 17:02
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: averiguar host de una $url (incluso subdominios)

Yo lo haría con expresiones regulares, o algo de lógica, arrays y explode().
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #7 (permalink)  
Antiguo 07/08/2012, 17:18
 
Fecha de Ingreso: agosto-2012
Mensajes: 16
Antigüedad: 11 años, 8 meses
Puntos: 0
Respuesta: averiguar host de una $url (incluso subdominios)

Cita:
Iniciado por pateketrueke Ver Mensaje
Yo lo haría con expresiones regulares, o algo de lógica, arrays y explode().
gracias, ya esta.. el explode era lo que me faltaba.. a estas hora de la noche no estoy para pensar mucho..

por si a alguien le interesa:

Código PHP:

  $url 
$_GET["url"];
 
  
$servidor parse_url($url);
 
  
$servidor $servidor["host"];
  
  
// comprobar si la url tiene algun subdominio
  
  
$total substr_count($servidor ".");
  
  if(
$total >= "2") {
  
  
$partes explode("."$servidor);
      
  
$servidor $partes[$total-1];
      
  
$ext $partes[$total];
  
  
$servidor $servidor.".".$ext;
      
  }
  

  
  echo
"$servidor"

Etiquetas: parse_url, subdominios, hosts
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 21:19.