¿Cómo tratar con “#” en una cadena de consulta en mod_rewrite?

Yo preguntéesta pregunta sobre la reescritura de viejos enlaces "feos" en otros amigos amistosos.

Necesito "extraer" alguna información después del símbolo "nítido" en algunas direcciones URL. Le he creado una expresión regular, pero no se ha visto que funcione.

Después de mi pregunta, creé esta lógica para esta url, por ejemplo,script.php?mode=full&id=23:

RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /script\.php\?mode=full&id=([0-9]+)\ HTTP/
RewriteRule ^script\.php$ fix_old_urls.php?phpfile=script2&id=%1 [NC,L]

Pero estoy trabajando en una aplicación heredada, y necesito extraer el valor después del símbolo nítido en algunas páginas, en la url de ejemploscript.php?mode=full#23:

RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /script\.php\?mode=list\#([0-9]+)\ HTTP/
RewriteRule ^script\.php$ fix_old_urls.php?phpfile=script&id=%1 [NC,L]

(en fix_old_urls redirecciono correctamente con un código 301).

El primero funciona, pero no el segundo. A mi me parece que es la misma lógica en ambos. ¿Qué estoy haciendo mal?

Respuestas a la pregunta(1)

Su respuesta a la pregunta