Clicky

Request-URI Too Large The requested URL's length exceeds the capacity limit for this server

Importancia del Juego de caracteres para la importación de una tabla mediante PhpMyAdmin

Logo PhpMyAdminVoy a postear de inmediato los errores que me voy encontrando en el mantenimiento de mi servidor y los diferentes sitios web, si no los iré dejando sin publicar como ya me ha pasado con otros conflictos en instalaciones, bien de CMS o del propio servidor.

Este error "Request-URI Too Large  The requested URL's length exceeds the capacity limit for this server" se me ha producido al importar una tabla de una base de datos mediante PhpMyAdmin.

En principio no me ha extrañado ya que como ando tocando las configuraciones de Apache y MySQl y hacía precisamente pocas horas que las había modificado. Así que lo achaqué a una mala configuración.

Reinicié MySQl y volví a la anterior configuración del archivo httpd.conf, reiniciando también Apache. Pero el error continuaba.

A buscar en Google...


Las opiniones de diversos foros sobre esta cuestión pasaban casi todas por ser un problema del servidor... Aunque otras se acercaban más al meollo de la cuestión poniendo como culpable al navegador.

Y efectivamente. La tabla era de sólo 5Kb y en el archivo php.ini tengo límite más que suficiente para subir esta menudencia (Tamaño máximo: 65,536 KB - 64MB), luego entonces tenía que ser un problema de Firefox que era el navegador que estaba usando para este trabajo...

En principio se solucionó con limpiar Firefox en "Herramientas", "Limpiar el historial reciente" y eligiendo "Todo". Una vez vuelto a logearme en el PhpMyAdmin del servidor e importar de nuevo la tabla no ha habido ningún problema, 5Kb los sube en un suspiro.

Pero... al ver el resultado en la página, es Háblame del Mar y la tabla era de los tags de cada post, la palabra océano, con acento, se me quedaba en "oc". Ummm... ¿Qué "Juego de caracteres del archivo" utilicé para la importación? Respuesta: utf8.

Juego de Caracteres Lain1 para importar

Bien, ahora me daba cuenta de que en las anteriores ocasiones había elegido un Juego de caracteres de archivo "latin1" precisamente para que tomase las posibles tildes, acentos y eñes. Entonces era cuando me daba el error  "Request-URI Too Large  The requested URL's length exceeds the capacity limit for this server", con un Juego de caracteres utf8 para la importación el error no se producía.

El razonamiento que yo doy para este conflicto, no entiendo mucho de MySQl, es que el cotejamiento MyISAM es "utf8_unicode_ci" y posiblemente no aceptase el "latin1" como juego de caracteres.

Juego de caracteres utf8 para importar tabla

Solución, importar con un juego de caracteres utf8 y luego modificar a mano los registros que tuviesen acentos. Menos mal que tenía pocos...

Cambiar Cotejamiento base de datos

Yo me imagino que cambiando el cotejamiento de las tablas que tengamos en idioma castellano que usan tildes, acentos y eñes, a "latin1_spanish_ci" en lugar del "utf8_unicode_ci" también se podría solucionar, pero esto no lo he probado. ¿Quizás en otro momento?


Jesus_Caceres