php - escape - Usar mod_rewrite para convertir rutas con caracteres hash en cadenas de consulta
url decode php utf8 (1)
Tengo un proyecto PHP donde necesito enviar un carácter hash (#) dentro de la ruta de una URL. ( http://www.example.com/parameter#23/parameter#67/index.php ) Pensé que urlencode lo permitiría, convirtiendo el hash a% 23
Pero ahora veo que incluso el hash urincodificado obliga al navegador a tratar todo a la derecha como el fragmento de URL (o consulta).
¿Hay alguna forma de pasar un hash, o debo hacer una sustitución de caracteres antes de urlencode?
Editar para agregar (Sep 19 2017):
Resulta que estaba haciendo la pregunta incorrecta. Mi problema no era usar el carácter hash dentro de la ruta (la codificación funciona), sino usar mod_rewrite para convertirlo en una cadena de consulta. No pude volver a codificarlo dentro de RewriteRule. Editaré el título para que coincida.
Aquí está la regla de reescritura que estaba usando:
RewriteEngine On
# convert path strings into query strings
RewriteRule "^(.*)/(.*)/hashtags.php" /hashtags.php?parameter_1=$1&parameter_2=$2 [QSA,L]
Tan pronto como agregué la etiqueta B, funcionó correctamente:
RewriteEngine On
# convert path strings into query strings
RewriteRule "^(.*)/(.*)/hashtags.php" /hashtags.php?parameter_1=$1&parameter_2=$2 [QSA,L,B]
Codifique el hash en la URL con% 23
http://twitter.com/home?status=I+believe+in+%23love
"Yo creo en el amor"
Referencia de codificación de URL: http://www.w3schools.com/tags/ref_urlencode.asp