GNU/Linux >> Tutoriales Linux >  >> Linux

Crear redirecciones en Nginx

Por qué usar un redireccionamiento

Utiliza una redirección cada vez que el propietario de un sitio web quiere que una dirección se redirija a otra dirección, normalmente redirigiendo HTTP a HTTPS o redirigiendo un dominio a otro dominio.

Escenario de HTTP a HTTPS:

Quiere que sus clientes accedan a su sitio seguro (SSL) aunque escriban http://yourwebsite.com o yourwebsite.com en su navegador. Este tipo de redirección logra precisamente eso. Por ejemplo, si su cliente escribe http://yourwebsite.com ,la redirección en Nginx® redirige la solicitud a https://yourwebsite.com .

Un dominio a otro escenario:

Eres el propietario de tuwebsite.com , tusitioweb.org y tusitioweb.net , y desea que sus clientes lleguen a susitioweb.com independientemente de la URL que ingresen en su navegador para visitar su sitio.

Cómo redirigir en Nginx

Las siguientes secciones describen cómo redirigir de HTTP a HTTPS y de un dominio a otro dominio.

HTTP a HTTPS

Cuando instala un certificado SSL en su servidor, tiene dos bloques de servidor para su sitio web:uno para HTTP y otro para HTTPS. El problema es que necesita una forma de forzar el tráfico a su sitio seguro SSL (la versión HTTPS). Puede lograr esto agregando una redirección al bloque del servidor Nginx para su sitio web.

Abra el archivo de configuración de su dominio. El archivo debe tener un nombre similar a /etc/nginx/vhost.d/yourwebsite.com.conf . El .conf indica el archivo de configuración de su dominio. Abra el archivo con su editor de texto favorito. El siguiente ejemplo usa el vim redactor:

vim /etc/nginx/vhost.d/yourdomain.com.conf

Your server block will look similar to this:

server {
	listen 80;
	server_name yourwebsite.com www.yourwebsite.com;
}

Dependiendo de su configuración particular, esto puede contener más información que el ejemplo anterior, pero este es un ejemplo simple que se enfoca en la opción de redirección.

Sin embargo, desea que sus clientes vayan a la versión segura de yourwebsite.com , por lo que debe agregar una redirección al bloque del servidor en el archivo de configuración. Para ello, modifique el bloque para que se parezca al siguiente ejemplo y guarde el archivo:

server {
	listen 80;
	server_name yourwebsite.com www.yourwebsite.com;
	return 301 https://yourwebsite.com$request_uri;
}

Con la línea de redireccionamiento anterior en su lugar, cada vez que sus clientes escriban yourwebsite.com o www.susitioweb.com , el sistema los redirige automáticamente a https://yourwebsite.com versión de su sitio web. Sin embargo, tenga en cuenta que debe agregar esta línea al HTTP 80 bloque de servidor, no HTTPS 443 bloque de servidor.

Probablemente también debería redirigir cualquier https://www.yourwebsite.com solicitudes a https://yourwebsite.com . Puede hacer esto agregando otra línea de redirección al 443 bloque de servidor, a menudo ubicado debajo del 80 serverblock en el archivo de configuración. Ese cambio es similar al siguiente ejemplo:

server {
	listen 443;
	server_name www.yourwebsite.com;
	return 301 https://yourwebsite.com$request_uri;
}

server {
	listen 443;
	server_name yourwebsite.com;
}

Nota: Es probable que los bloques de su servidor contengan más información que los ejemplos simplificados anteriores.

Un dominio a otro

Cuando tiene un dominio con varios dominios de nivel superior (como .com ,.net , .org , etc.) y desea que todos esos sitios lleguen al mismo sitio web, use una redirección. Para este ejemplo, asumimos que eres el propietario de tusitioweb.com , tusitioweb.org y tusitioweb.net , y desea redirigirlos a susitioweb.com .

Edite de nuevo el archivo de configuración de su dominio. En lugar de agregar un HTTPS redirigir, modifique el bloque del servidor como se muestra en el siguiente ejemplo:

server {
	listen 80;
	server_name yourwebsite.net;
	return 301 $scheme://yourwebsite.com$request_uri;
}

server {
	listen 80;
	server_name yourwebsite.org;
	return 301 $scheme://yourwebsite.com$request_uri;
}

Ahora, siempre que tus clientes entren en tuwebsite.net o tusitioweb.org , el sistema los redirige a yourwebsite.com en su lugar.

Guarde y cierre sus archivos de configuración después de sus ediciones y reinicie ambos nginx y php-fpm para hacer que esos cambios se activen.


Linux
  1. Crear hosts virtuales CentOS NGINX

  2. Crear redirecciones en Nginx

  3. Creación de redireccionamientos de Apache

  4. Cómo crear un reenvío de correo electrónico o un alias en Plesk

  5. Crear un enlace simbólico de directorio en Ubuntu

Cómo configurar bloques de servidor Nginx en CentOS 7

Cómo configurar bloques de servidor Nginx en CentOS 8

Cómo configurar bloques de servidor Nginx en Debian 9

Cómo configurar bloques de servidor Nginx en Debian 10

Cómo crear un servidor de streaming en FreeBSD

Instalar Nginx en Ubuntu 18.04