Problema con Archivo access.log en Squid

20 06 2011

Hola como están quiza esto les parezca un poco tonto de mi parte pero me sucedió, así que lo documento por si a alguien también le ocurre, resulta que hace tiempo instale squid para controlar el accesos de los usuarios a internet, pero no me habia generado el archivo access.log lo que me parecía bastante preocupante, luego de buscar un rato sin dar con la solución encontré una página en ingles que me ayudo mucho, la cosa simplemente era agregar al archivo squid.conf la siguiente linea:
cache_access_log /var/log/squid/access.log
Y nada mas, ya con esto podemos trabajar y revisar los accesos de nuestros usuarios, si queremos un poco mas de detalle podemos instalar una herramienta como Sarg, pero esa ya es otra historia, nos vemos, saludos y hasta la victoria siempre.





Problemas con UTF8

21 05 2011

Esta vez me ocurrió un problema con una página web que tengo que administrar, resulta que al mostrarse en el navegador me estaba reemplazando las tildes y las “ñ” con caracteres raros, después de una larga investigación y tras probar infinidad de métodos lo único que me funcionó fue lo siguiente:

Primero cambiar el set de caracteres de mi base de datos(MYSQL) a utf8_unicode_ci, tambien se puede utilizar utf8_general_ci, luego de eso tengo que cambiar el encabezado de mis archivos de la página web para que trabajen con utf8:

<meta http-equiv=”Content-Type” content=”text/html; charset=utf-8″ />

Al principio pensaba que con eso era suficiente pero seguía con el mismo error, ¿Qué cosa me faltaba?, navegando en la red encontré que después de hacer la conexión tenia que decirle a mis consultas que usen utf8, para eso tengo que añadir lo siguiente:

mysql_query (“SET NAMES ‘utf8′”);

Debo recordar que esto se hace después de establecer la conexión y antes de realizar cualquier consulta.

Ya con esto tengo el problema solucionado y puedo visualizar mi web sin ningún problema. Pero si tambien deseamos cambiar la codificacion de nuestros ficheros fuente de ISO 8859-1 a UTF-8 podemos hacer un script como este para linux:

#!/bin/bash
for i in `find -name ‘*.php’`
do
iconv -f ISO_8859-1 -t UTF-8 $i > tmpfile
mv -f tmpfile $i
done

Lo corremos y comprobamos que el cambio ha sido realizado con el siguiente comando:

 file -i nombre_archivo

El cual nos muestra las características detalladas del archivo.

Saludos y hasta la victoria siempre.





Hacer Backup de varias tablas en Mysql

19 05 2011

Resulta que necesitaba hacer un backup de mi base de datos, pero no de toda sino solamente de algunas tablas específicas, así que para lograrlo tuve que hacer uso de la siguiente linea:
mysqldump -u usuario -pcontraseña base_datos tabla1 tabla2 …. tablan > /ruta/archivo.sql
Saludos.





Otro error actualizando Centos

12 05 2011

Me toco actualizar Centos en otra de las maquinas que tengo, todo iba funcionando bien hasta que me apareció el siguiente error:
GPG key retrieval failed: [Errno 5] OSError: [Errno 2]
No such file or directory: ‘/etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL’
Este error tiene que ver con este repositorio:
/etc/yum.repos.d/epel.repo
Allí hay una linea que indica lo siguiente:
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL
Pero debido a que no tenemos descargado este archivo en la ubicación especificada nos sale el error. Por lo tanto lo que debemos hacer es lo siguiente:
-Entramos a la carpeta
cd /etc/pki/rpm-gpg
-Descargamos el archivo.
wget http://download.fedora.redhat.com/pub/epel/RPM-GPG-KEY-EPEL
Y realizamos nuevamente la actualización. Yo personalmente antes de encontrar esta solución tuve que modificar el archivo con la siguiente linea:
gpgkey=http://download.fedora.redhat.com/pub/epel/RPM-GPG-KEY-EPEL
Pero si ya descargaron el archivo en la ubicación correspondiente ya no es necesario hacer el paso anterior, nomas lo comentaba por que lo hice de esa forma.
Bueno ojala esto les ayude tal como me ha ayudado a mi.
Saludos y hasta la victoria siempre.





Grupos de Paquetes en Centos

12 05 2011

Si queremos conocer el software agrupado por categorías en Centos, por ejemplo Software de Desarrollo, Software de Oficina, etc. Tenemos que utilizar el siguiente comando:
yum grouplist
Con esto obtendremos una lista completa de las categorías del software.
Si por ejemplo queremos instalar una categoría determinada tendríamos que poner:
yum groupinstall Nombre_Categoría
Y si queremos remover una categoría entera entonces pondríamos:
yum groupremove Nombre_Categoria
Otra cosa los nombres compuestos deben ir entre comillas.
Esto es todo por este post, saludos y hasta la victoria siempre.





Error actualizando Centos

11 05 2011

Y sigo con mis posts cortitos, ahora resulta que tuve un problema actualizando una version de Centos de la epoca de mi abuelita, en el momento de hacer el comando:
yum update empezaba a trabajar normalmente cuando de repente el proceso se detenía y salían un montón de mensajes de error de código Python, con un mensaje al final:
TypeError: unsubscriptable object
Esto simplemente se arregla con la siguiente linea de codigo:
rpm -q yum-metadata-parser
La explicación mas técnica la buscare en su momento y la posteare porque me parece sumamente interesante, por el momento lo dejo allí porque ya solucione mi problema(que ocioso que me he vuelto). XD
Para mas informacion les dejo este blog:

http://blog.rowancrane.com/2009/05/13/yum-update-typeerror-unsubscriptable-object

Saludos y hasta la victoria siempre.





Conectarse via SSH sin contraseña

11 05 2011

Bueno aquí dejo otro post rapidito para que me sirva de recordatorio, la cosa es bastante simple resulta que tengo que conectarme vía ssh de una maquina centos a otra mediante un script automatico sin poner la contraseña de la maquina remota, esto tambien puede ser util si queremos copiar archivos mediante scp.
¿Como lo hacemos entonces?
Sencillo simplemente tenemos que generar una clave dsa pública local en el ordenador cliente:
usuario@cliente# ssh-keygen -t dsa
Le damos enter a todos los avisos sobre todo este: “Enter passphrase (empty for no passphrase):”, lo hacemos asi para dejarla en blanco.
Luego de esto tendremos que exportar esta clave al ordenador remoto mediante el siguiente comando:
ssh-copy-id -i ~/.ssh/id_dsa.pub usuario@ordenadorremoto
Nos pedira la contraseña del ordenador remoto la ponemos y listo a partir de ahora ya podemos conectarnos via ssh sin necesidad de poner la contraseña.
Si necesitan ahondar un poco mas en el tema les recomiendo este tutorial muy interesante.

http://www.userlinux.net/342_ssh_sin_password.html

Saludos y hasta la victoria siempre.





Actualizar Centos con Yum

10 05 2011

Buenas tardes dejo este post sencillo y rápido para que me sirva como recordatorio. Bueno resulta que necesitaba actualizar una maquina Centos que estaba dentro de una red detrás de un proxy, el problema que me salia errores con los repositorios, el problema radica en que al estar detrás de un proxy debemos indicarle eso a nuestro archivo yum.conf que está en la siguiente direccion:
/etc/yum.conf
A este archivo le agregamos la siguiente linea:
proxy=http://direccion_ip_proxy:puerto_proxy
Guardamos los cambios y con esto ya podemos actualizar nuestro Centos usando:
yum update
Esto es todo por este post, nos vemos y hasta la victoria siempre. Saludos.





Interactuar con una BD Mysql desde un script

3 02 2011

Esto para muchos será sencillo pero admito que no sabia como hacerlo, el problema que tenia era que necesitaba replicar una tabla con actualizaciones de un servidor a otro y luego de hacer eso eliminar los datos de esa tabla, para que el proceso se iniciara nuevamente limpio:
Aquí solamente voy a poner la parte donde hago el backup de la tabla y luego borro los datos de la misma:

mysqldump -u $user -p$pass db_name table_name > /rutaarchivo/nombrearchivo.sql;
mysql -u $user -p$pass << EOF
use db_name
delete from table_name
EOF

Claro está que:
$user y $pass son el usuario y la contraseña del servidor de base de datos al que quieren acceder, db_name y table_name son los nombres de la base de datos y de la tabla respectivamente.
Saludos y hasta la victoria siempre.





Codigo para validar Tipos de Archivos en Javascript

26 01 2011

Puede que se nos haya presentado el caso, en el que queremos subir archivos a nuestro servidor, pero queremos validar el tipo de archivos que estamos trabajando, por ejemplo subir solo imagenes, para esto podemos usar una funcion como la siguiente:

function LimitAttach(tField,iType)
{
file=tField.value;
if (iType==1)
{
extArray = new Array(“.gif”,”.jpg”,”.png”);
}
if (iType==2)
{
extArray = new Array(“.swf”);
}
if (iType==3)
{
extArray = new Array(“.exe”,”.sit”,”.zip”,”.tar”,”.swf”,”.mov”,”.hqx”,”.ra”,”.wmf”,”.mp3″,”.qt”,”.med”,”.et”);
}
if (iType==4)
{
extArray = new Array(“.mov”,”.ra”,”.wmf”,”.mp3″,”.qt”,”.med”,”.et”,”.wav”);
}
if (iType==5)
{
extArray = new Array(“.html”,”.htm”,”.shtml”);
}
if (iType==6)
{
extArray = new Array(“.doc”,”.xls”,”.ppt”);
}
allowSubmit = false;
if (!file) return;
while (file.indexOf(“\\”) != -1) file = file.slice(file.indexOf(“\\”) + 1);
ext = file.slice(file.indexOf(“.”)).toLowerCase();
for (var i = 0; i < extArray.length; i++)
{
if (extArray[i] == ext)
{
allowSubmit = true;
break;
}
}
if (allowSubmit)
{
}
else
{
tField.value=”";
alert(“Usted sólo puede subir archivos con extensiones ” + (extArray.join(” “)) + “\nPor favor seleccione un nuevo archivo”);
}
}

En la etiqueta donde tenemos el input=’file’ agregamos onBlur=”LimitAttach(this,1);”
Con esto ya tenemos validado la subida de ficheros de un determinado tipo.
Tomado de:

http://www.forosdelweb.com/f13/faqs-javascript-105325/index5.html#post426198

Saludos y hasta la victoria siempre.








Seguir

Get every new post delivered to your Inbox.