Planeo comprar dos nombres de dominio para el mismo sitio. Dependiendo de qué dominio se use, planeo proporcionar datos ligeramente diferentes en la página. ¿Hay alguna forma de detectar el nombre de dominio real desde el que se carga la página para saber a qué cambiar mi contenido?
He buscado cosas como esta, pero la mayoría no funciona como yo quiero.
Por ejemplo cuando se usa
document.write(document.location)
en JSFiddle vuelve
http://fiddle.jshell.net/_display/
es decir, el camino real o lo que sea.
javascript
domain-name
Freesnöw
fuente
fuente
premium.random.com
yfree.random.com
Respuestas:
Qué tal si:
El
location
objeto en realidad tiene una serie de atributos que se refieren a diferentes partes de la URLfuente
window.location.hostname
si no quieres obtener elport
(comohttp://localhost:3000/
,window.location.host = 'localhost:3000'
ywindow.location.hostname = 'localhost'
window.location.host
a veces devolverá el puerto.Intente ejecutar en script: ruta: http: // localhost: 4200 / landing? Query = 1 # 2
La ubicación tiene los siguientes valores:
fuente
Si no está interesado en el nombre de host (por ejemplo
www.beta.example.com
) pero en el nombre de dominio (por ejemploexample.com
), esto funciona para nombres de host válidos:fuente
amazon.co.uk
. Pero definitivamente no "casi todos los TLD internacionales". De hecho, funciona con el 100% de los códigos de país que se encuentran en WikipediaEjemplos
La versión anterior estaba obteniendo el dominio completo (incluido el subdominio). Ahora determina el dominio correcto según la preferencia. De modo que cuando se proporciona un segundo argumento como verdadero, incluirá el subdominio; de lo contrario, solo devolverá el 'dominio principal'
fuente
localhost/test.php
y esa es la respuesta correctalocalhost
.google.co.uk
para, obtendrás 'co.uk', lo cual no es correcto ...Puede obtenerlo fácilmente desde el objeto de ubicación en Javascript:
Por ejemplo, la URL de esta página es:
Entonces podemos obtener el dominio exacto con las siguientes propiedades del objeto de ubicación:
puedes hacer el dominio completo con:
Que en este ejemplo devuelve
http://www.stackoverflow.com
Además de esto, podemos obtener la URL completa y también la ruta con otras propiedades del objeto de ubicación:
fuente
Si solo está interesado en el nombre de dominio y desea ignorar el subdominio, debe analizarlo
host
yhostname
.El siguiente código hace esto:
http://jsfiddle.net/5U366/4/
fuente
Como esta pregunta solicita el nombre de dominio, no el nombre de host, se debe responder correctamente
Esto también funciona para nombres de host como www.example.com .
fuente
Utilizar
window.location
Tiene un montón de propiedades. Vea aquí para obtener una lista de ellos.fuente
Si desea un origen de dominio completo, puede usar esto:
Y si desea obtener solo el dominio, use puede simplemente esto:
Pero tiene otras opciones, eche un vistazo a las propiedades en:
fuente
¿Qué hay de esta función?
Esto coincidirá solo con el nombre de dominio, independientemente de si es un subdominio o un dominio principal
fuente
Si desea obtener el nombre de dominio en JavaScript, simplemente use el siguiente código:
Si necesita la ruta URL de la página web para poder acceder a la ruta URL de la web, use este ejemplo:
fuente
para mi caso la mejor coincidencia es window.location.origin
fuente
Soy nuevo en JavaScript, pero ¿no puedes usar: document.domain ?
Ejemplo:
Salida:
o
Dependiendo de lo que use en su sitio web.
fuente
Me imagino que debería ser tan simple como esto:
url.split("/")[2]
fuente
Combinando algunas respuestas de lo anterior, lo siguiente funciona muy bien para mí para destruir Cookies:
Obras para las direcciones IP con puertos, por ejemplo, 0.0.0.0:8000 etc, así como dominios complejos como
app.staging.example.com
regresar.example.com
=> permite la configuración de varios dominios de la galleta y la destrucción.fuente
Si desea el nombre de dominio del país, por ejemplo, extraer .com de stackoverflow.com:
(ES6):
(ES5):
Luego, solo use la función para asignar el valor a una var:
fuente
De hecho funcionó para mí, mientras que no podía usar PHP
Solo probé que funcionó gracias al enfoque mencionado anteriormente en algunas de las respuestas, tan rápido y verificado que funcionó
fuente