
Esto parece simple, pero no pude hacerlo.
Tengo un usuario que cambió su nombre de usuario de givenname
a name
y ahora necesito reescribirlo, cambiando la URL en los clientes, para evitar errores 404 en ~givenname.
Pensé que podría hacer algo como esto:
RewriteEngine on
RewriteBase /~givenname/
RewriteRule ^~givenname/([^/]+)$ ~name/$1 [R=301,L]
Pero no pude hacer esto.
Soy consciente de que mod_userdir
busca información de usuario específica en archivos Unix ( /etc/passwd
) o lo que sea que se especifique /etc/nsswitch.conf
, pero ¿hay una manera de engañarlo y redirigirlo al nuevo nombre de usuario?
Gracias.
PD: estoy ejecutando un pequeño servidor Apache 2.2.16.
Respuesta1
Podrías desactivar elmod_userdircaracterística para el nombre de usuario anterior:
UserDir disabled givenname
Después de eso, simplemente podrías usarmod_aliaspara la redirección:
Redirect "/~givenname" "/~name"
Actualice a Apache 2.4 lo antes posible: ¡Apache 2.2 no tiene actualizaciones después de 2017 y 2.2.16 es de julio de 2010!