Inicia sesión




Cómo obtener la URL actual en PHP

Cómo obtener la URL actual en PHPObtener la URL actual con PHP puede ser muy simple como esto:
$url = $_SERVER["HTTP_HOST"] . $_SERVER["REQUEST_URI"]
Si lo vamos a utilizar como link podríamos hacer esto:
// Nota: el resultado es protocolo agnostic
$link = $_SERVER[HTTP_HOST] . $_SERVER[REQUEST_URI];
$escaped_link = htmlspecialchars($link, ENT_QUOTES, 'UTF-8');
echo '<a href="'.$escaped_link.'">'.$escaped_link.'</a>';
Y si queremos algo más completo, podemos complicarlo bastante y acceder al protocolo utilizado, puerto, etc:
function url_origin($s, $use_forwarded_host=false) {

  $ssl = ( ! empty($s['HTTPS']) && $s['HTTPS'] == 'on' ) ? true:false;
  $sp = strtolower( $s['SERVER_PROTOCOL'] );
  $protocol = substr( $sp, 0, strpos( $sp, '/'  )) . ( ( $ssl ) ? 's' : '' );

  $port = $s['SERVER_PORT'];
  $port = ( ( ! $ssl && $port == '80' ) || ( $ssl && $port=='443' ) ) ? '' : ':' . $port;
  
  $host = ( $use_forwarded_host && isset( $s['HTTP_X_FORWARDED_HOST'] ) ) ? $s['HTTP_X_FORWARDED_HOST'] : ( isset( $s['HTTP_HOST'] ) ? $s['HTTP_HOST'] : null );
  $host = isset( $host ) ? $host : $s['SERVER_NAME'] . $port;

  return $protocol . '://' . $host;

}

function full_url( $s, $use_forwarded_host=false ) {
  return url_origin( $s, $use_forwarded_host ) . $s['REQUEST_URI'];
}

$absolute_url = full_url( $_SERVER );
echo $absolute_url;
Entonces hay quien argumentará que utilizar $_SERVER['HTTP_HOST'] no es un método seguro, ya que es definido en las cabeceras de la solicitud, lo que implica que el cliente (navegador) puede enviar el valor que quiera, y que en su lugar habría que utilizar $_SERVER['SERVER_NAME'], ambos deberían contener el mismo valor pero $_SERVER['SERVER_NAME'] es definido por la configuración del servidor y el cliente no lo puede modificar. Utiliza el que necesites: la cabecera de la solicitud o la configuración del servidor. En el bloque de código anterior se utiliza primero $_SERVER['HTTP_HOST'] y si no está definido se utiliza $_SERVER['SERVER_NAME'] (tenlo en cuenta si lo vas a utilizar).

Pero la mayoría de las veces no hay que complicarse tanto pues se necesita sólo alguna de la información de la superglobal $_SERVER y no la URL solicitada como tal. En el manual PHP sobre $_SERVER puedes ver toda la información disponible en esta variable, o puedes hacer un var_dump( $_SERVER ) para ver la información disponible en tu propia web. Alguna de la más comúnmente utilizada, respecto a la URL, es:

$_SERVER[‘SERVER_NAME’] y $_SERVER[‘HTTP_HOST’]


Ambos contienen el host, lo que generalmente llamamos dominio. La diferencia entre ambos, como se mencionó antes, es que $_SERVER['SERVER_NAME'] toma el valor de la configuración del servidor y $_SERVER['HTTP_HOST'] toma el valor de las cabeceras HTTP de la solicitud realizada por el cliente. En teoría (y en la práctica) es posible que ambos no coincidan.

$_SERVER[‘REQUEST_URI’]


Se puede decir que es todo lo que hay después del dominio, incluyendo el query string. Por ejemplo, en la URL ...midominio.com/una/url/cualquiera?bar=foo el valor de $_SERVER['REQUEST_URI'] sería una/url/cualquiera?bar=foo. Hay que tener en cuenta que los identificadores de fragmento nunca son enviados al servidor, por ejemplo, si se solicita ...midominio.com/una/url#un-identificador, la parte #un-identificador no es enviada al servidor en la solicitud y no estará disponible en $_SERVER['REQUEST_URI']; los identificadores de fragmento si están disponibles en jаvascript.

$_SERVER[‘QUERY_STRING’]


Contiene la llamada cadena de consulta. Por ejemplo, en ...midominio.com/una/url/cualquiera?bar=foo&bar2=foo2, el query string es ?bar=foo&bar2=foo2, aunque generalmente se utiliza $_GET o $_REQUEST para acceder a las diferentes variables de la cadena de consulta y sus respectivos valores.

Te sugiero seguir leyendo...


  • Autor:
  • Editor: Tutoriales En Linea
  • Fecha:2019-08-11
  • Categorias: Lenguajes De Programacion php WebSite webmasters Noticias Tutorial

Cómo obtener la URL actual en PHP
Cómo obtener la URL actual en PHP Cómo obtener la URL actual en PHP...
Tutoriales en linea




Información
Usuarios que no esten registrados no pueden dejar comentarios, te invitamos a que te registre!






Como descargar videos de YouTube, Instagram, Facebook y Twitter

  • Autor:
  • Editor: Tutoriales En Linea
  • Fecha:2020-03-30
  • Categorias: YouTube Audio Video Redes Sociales Facebook Twitter Instagram WebSite Noticias Tutorial

Como recuperar archivos borrados

  • Autor:
  • Editor: Tutoriales En Linea
  • Fecha:2020-03-30
  • Categorias: Windows Software Ordenador Noticias Tutorial Informatica

Cómo iniciarse en el mundo swinger

  • Autor:
  • Editor: Tutoriales En Linea
  • Fecha:2020-03-30
  • Categorias: Estilo Noticias Tutorial

Curso de CSS avanzado

  • Autor:
  • Editor: Tutoriales En Linea
  • Fecha:2020-01-18
  • Categorias: Diseño Web CSS3 html5 Html Cursos Noticias Tutorial

Curso de Introducción a CSS

  • Autor:
  • Editor: Tutoriales En Linea
  • Fecha:2020-01-18
  • Categorias: Diseño Web CSS3 WebSite webmasters Cursos Noticias Tutorial

Curso básico de Javascript

  • Autor:
  • Editor: Tutoriales En Linea
  • Fecha:2020-01-17
  • Categorias: Diseño Web javascript Cursos Noticias Tutorial