Comments (1)
Es normal, según el estándar un espacio en blanco puede ser +
o %20
, de hecho php en la función urlencode
utiliza +
para ahorrar bytes. Asi que una URL con espacios en blanco puede llevar +
sin problemas.
En el caso de tu ejemplo, el problema se encuentra del lado del blog el cual no está procesando correctamente las URLs de forma estandar, el problema no es de meneame sino del blog, de hecho lo mismo sucede con algunos enlaces que tienen letras "ñ". Hay que recordar que por temas de SEO nunca es recomendable tener un permalink con espacios en blanco.
Según el RFC de HTTP la primera línea consta del método, ruta y versión del protocolo, por ejempo:
GET /abc-def HTTP/1.1
El mismo estándar indica que la primera línea de la cabecera de la solicitud HTTP (que realiza el navegador WEB) consta únicamente de 3 partes, no de 4 o 5 y cada parte está separado por un espacio en blanco \x20
, no un tab ni un salto de línea, por lo cual, ¿qué sucede cuando la URL tiene un espacio en blanco?, la solución es codificar la ruta utilizando el estándar de URI Path, o sea, convirtiendo los caracteres especiales en valores hexadecimales anteponiendo un signo %
salvo algunas excepciones como el espacio en blanco el cual puede ser +
. Asi que cuando en la URL del navegadr WEB ves un espacio en blanco realmente el servidor está recibiendo un %20
o +
y este de forma automática según el estándar lo decodifica y lo transforma en ruta.
Por lo que veo el blog utiliza un framework hecho en GoLang el cual carece de buenas prácticas en cuanto al uso de estándares, mejor te recomiendo algún framework que utilice una capa superior al servicio WEB, por ejemplo, puedes utilizar Nginx como capa superior de exposición para interpretar y filtrar las rutas estandarizadas y luego utilizar algun servicio como Java Spring, php laravel, .NET MVC5 o NodeJS Express, los cuales ya cuentan con componentes que pueden ayudar a resolver las rutas de forma automática y estandarizada.
from meneame.net.
Related Issues (20)
- BUG: Estilos en los articulos se rompen despues de un articulo en concreto HOT 1
- BUG: Error 500 al.clikar en link a comentario en noticia
- BUG: Al votar positivo solo funciona bien la primera vez
- BUG: 100 comentarios maximo
- BUG: Si pincho en un comentario mas alla del 100 falla y no lo.muestra.
- comment_ajax?reply_to=
- No puedo comentar ni ver comentarios. HOT 1
- meneame.net/rss no está accesible HOT 1
- HTTP error
- Error "Ya se votó antes con el mismo usuario o IP" HOT 1
- no se me deja volver a la version vieja
- Registro no se puede verificar con email y token (un "+") HOT 1
- Se ha perdido la opción "Candidatas"
- Imposible loguearse en la versión nueva con nombre de usuario sin correo.
- Certificado expirado en https://old.meneame.net
- Imposible loguearse con Facebook HOT 1
- Error de logueo con gmail
- Requisitos para enviar noticias HOT 1
- How to Reset HP Printer
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from meneame.net.