Internet
Avanzado:
|
URL (Localizador uniforme de recursos) es un formato de asignación de nombres universal, utilizado para indicar un recurso en Internet. Es una cadena de caracteres ASCII imprimible que se divide en cinco partes:
Por lo tanto, una URL tiene la siguiente estructura:
| Protocolo | Contraseña (opcional) | Nombre del servidor | Puerto (opcional si es 80) |
Ruta |
| http:// | usuario:contraseña@ | www.cómofunciona.net | :80 | /glossair/glossair.php3 |
Por ejemplo, los siguientes protocolos pueden utilizarse con URL:
El nombre del archivo en la URL puede estar seguido de un signo de interrogación y después de datos en formato ASCII. Estos son datos adicionales enviados como parámetros para una aplicación del servidor (por ejemplo, una secuencia de comandos CGI ). La URL entonces tendrá el aspecto de una cadena de caracteres como esta:
http://www.cómofunciona.net/forum/?cat=1&page=2
Si se tiene en cuenta que la URL es un medio para enviar información por Internet (para enviar datos con una secuencia de comandos CGI, por ejemplo), debe poder enviar caracteres especiales. Sin embargo, las URL no pueden contener caracteres especiales. Además, ciertos caracteres están reservados porque poseen un significado (la barra permite especificar subdirectorios, los caracteres & y ? se utilizan para enviar datos a través de formularios, etc.). Finalmente, las URL pueden incluirse en un documento HTML, con lo cual resulta difícil insertar caracteres como < o en la URL.
¡Por ello la codificación es necesaria! La codificación consiste en reemplazar caracteres especiales por el carácter % (que también se está convirtiendo en un carácter especial) seguido del código ASCII del carácter que se va a codificar en notación hexadecimal.
A continuación se indica una lista de caracteres que requieren codificación especial:
| Carácter | Codificación URL |
|---|---|
| Tabulación | %09 |
| Espacio | %20 |
| " | %22 |
| # | %23 |
| % | %25 |
| & | %26 |
| ( | %28 |
| ) | %29 |
| + | %2B |
| , | %2C |
| . | %2E |
| / | %2F |
| : | %3ª |
| ; | %3B |
| < | %3C |
| = | %3D |
| > | %3E |
| ? | %3F |
| @ | %40 |
| [ | %5B |
| \ | %5C |
| ] | %5D |
| ^ | %5E |
| ' | %60 |
| { | %7B |
| | | %7C |
| } | %7D |
| ~ | %7E |
El formato de las URL se define en la RFC (petición de comentarios) 1738: