¿Cómo puedo redireccionar mydomain.com
y cualquier subdominio *.mydomain.com
al www.adifferentdomain.com
usando NGINX?¿Cómo redirigir a un dominio diferente usando NGINX?
Respuesta
server_name apoya sufijo coincide usando .midominio.es sintaxis:
server {
server_name .mydomain.com;
rewrite^http://www.adifferentdomain.com$request_uri? permanent;
}
o en cualquier versión 0.9.1 o superior:
server {
server_name .mydomain.com;
return 301 http://www.adifferentdomain.com$request_uri;
}
Eso debería funcionar a través de HTTPRewriteModule.
Ejemplo reescribir de www.example.com a example.com:
server {
server_name www.example.com;
rewrite^http://example.com$request_uri? permanent;
}
que está redireccionando www.example.com t o ejemplo.com. Quiero redirigir ambos a un dominio diferente. ¿Puedo hacer eso en una regla? – deb
No estoy seguro, pero creo que server_name midominio.com; reescriba www.adifferentdomain.com permanente; } debería hacerlo? Eso debería tomar todo * .midominio.com? – udo
@deb solo tendrías 'server_name example.com www.example.com;'. – citruspi
Por qué utilizar el módulo de reescritura si se puede hacer return
? Técnicamente hablando, return
es parte del módulo de reescritura como you can read here pero este fragmento es más fácil de leer.
server {
server_name .domain.com;
return 302 $scheme://forwarded-domain.com;
}
También puede darle una redirección 301.
¿Esto mantendrá los parámetros ruta y consulta también? – mpen
No, este ejemplo no hace eso @Mark. Pero supongo que puedes mezclar las respuestas anteriores para llegar a algo como esto: 'return 302 $ scheme: //forwarded-domain.com$request_uri;' –
En una nota lateral, en muchos casos, probablemente solo deberías redirigir a https en lugar de preservar el esquema (es decir, use https en lugar de $ scheme). Esto se debe a los mismos motivos por los que los enlaces relativos al protocolo ahora se consideran obsoletos: http://www.paulirish.com/2010/the-protocol-relative-url/ – mahemoff
server {
server_name .mydomain.com;
return 301 http://www.adifferentdomain.com$request_uri;
}
http://wiki.nginx.org/HttpRewriteModule#return
y
Si desea redirigir las peticiones de "domain1.com" a "domain2.com", se podría crear un bloque de servidor que se ve de esta manera:
server {
listen 80;
server_name domain1.com;
return 301 $scheme://domain2.com$request_uri;
}
- 1. nginx - redirigir una ruta determinada a otro dominio
- 2. nginx redirigir HTTPS a HTTP
- 3. Nginx redirigir si cookie presente
- 4. HTML5 Ajax a un dominio diferente?
- 5. codeigniter redirigir a diferente controlador
- 6. MVC 3 -ASP.NET Redirigir a vista diferente
- 7. Cómo redirigir una url en NGINX
- 8. Cómo redirigir una sola página web de un dominio a otro usando .htaccess
- 9. ¿Cómo redirecciono el dominio a un subdominio usando htaccess?
- 10. Redirigir IP al dominio
- 11. proxy nginx y 404 redirigir
- 12. ASP.Net MVC redirigir a una vista diferente
- 13. dominio Comodín redirigir con WordPress
- 14. Redirigir múltiples dominios/URL a uno, dominio canónico
- 15. ¿Cómo redirecciono las solicitudes https: // a http: // en NGINX?
- 16. nginx redirigir todos los directorios, excepto uno
- 17. ¿Cómo redirigir a una página de administración diferente en Wordpress?
- 18. Cómo redirigir a otra página usando PHP
- 19. 301 redirigir desde una URL con una cadena de consulta a un nuevo dominio con una cadena de consulta diferente
- 20. Nginx - redirigir de https a http sin certificado SSL
- 21. Nginx reescritura sólo cuando dominio raíz
- 22. Apache mod_rewrite redirigir el tipo de archivo a otro dominio
- 23. Redirigir un subdominio con una expresión regular en nginx
- 24. ¿Cómo depilar web2py usando nginx?
- 25. Redirigir a la misma ruta en el nuevo dominio
- 26. Redirigir todo el tráfico a la raíz de otro dominio
- 27. a redirigir a un móvil subdominio usando 51degrees
- 28. ¿Cómo se redirige un dominio a Amazon EC2 Machine?
- 29. ¿Cómo configuro nginx para cargar try_files desde una carpeta diferente?
- 30. cómo redirigir el dominio según el país dirección de IP
¿No necesito poner un puerto para escuchar? p.ej. listen 80. Tengo varios dominios que necesito redirigir a un dominio principal, pero mi servidor también tiene varios servidores virtuales para varios otros dominios. – Ryan
@Ryan La directiva 'listen' se establece de manera predeterminada en el puerto 80 cuando no se especifica. En realidad es un poco más complicado que eso en general; ver los [documentos de configuración de nginx] (http://wiki.nginx.org/HttpCoreModule#Directives) para más detalles. – Yitz
¿Qué logra el '?' Al final? –