web-dev-qa-db-fra.com

Comment appelez-vous la première partie entière d'une URL?

Si j'ai une URL comme:

http://www.example.com:9090/test.html

Alors je sais que www.example.com est le nom d'hôte, mais comment appelez-vous http://www.example.com:9090? Y a-t-il une sorte de nom établi pour cela?

68
jnicklas

Je ne connais pas le nom quand il a le schéma, mais le nom d'hôte avec le port est collectivement connu sous le nom de Authority. Une belle explication here .

28
keyboardP

On l'appelle l'origine .


Plus généralement, voici les différentes parties d'une URL, selon window.location . (Donc au moins selon la façon dont Javascript l'appelle)

protocol://username:password@hostname:port/pathname?search#hash
-----------------------------href------------------------------
                             -----Host----
-----------      Origin      -------------
  • protocol - schéma de protocole de l'URL, y compris le ':' final
  • hostname - nom de domaine
  • port - numéro de port
  • pathname - /pathname
  • search - ?parameters
  • hash - #fragment_identifier
  • username - nom d'utilisateur spécifié avant le nom de domaine
  • password - mot de passe spécifié avant le nom de domaine
  • href - l'URL entière
  • Origin - protocol://hostname:port
  • Host - hostname:port

La définition formelle est dans RFC 6454 section 4.

68
d4nyll
  • http: // - Protocole
  • www - Server-Name (sous-domaine)
  • exemple - Domaine de deuxième niveau (SLD)
  • com - Domaine de premier niveau (TLD)
  • 9090 - Numéro de port
  • /test.html - Chemin

Enregistrez le protocole, vous pouvez vous référer à "www.example.com" comme nom d'hôte ou - plus précisément - "nom de domaine complet".

Ajoutez le "9090" et personnellement, je serais à l'aise de l'appeler l'hôte, car c'est généralement ce que vous obtenez en tant qu'en-tête "hôte" dans une demande HTTP; quelque chose comme "Host: www.example.com:9090". Dans PHP il serait stocké dans le $_SERVER variable sous 'HTTP_Host' ou 'SERVER_NAME'. En JavaScript, il serait disponible en tant que document.location.Host.

Je ne sais pas comment on pourrait l'appeler une fois que vous lancez 'http: //' :(

26
Richard JP Le Guen

La RFC 3986 détaille les composants de syntaxe . La partie à laquelle vous faites référence serait le schéma (http) et l'autorité (www.example.com:9090).

14
McDowell

FWIW, la classe Uri du framework .Net va pour "GetLeftPart ()". C'est irritant de ne pas avoir de nom propre pour "schéma + autorité"

1
Chris F Carroll

Je ne pense pas. S'il y en avait, je m'attendrais à ce que le DOM reflète cela dans la classe window.location: https://developer.mozilla.org/En/DOM/Window.location

0
Teun D

Vous pouvez lire sur chaque partie de l'URL sur Wikipedia . Vous y trouverez que http est un nom de protocole, :9090 détermine que la connexion doit être établie sur le port # 9090, etc.

0
Crozin