jueves, 21 de mayo de 2009

Problemas anidando div CSS - Problema de ajuste de altura o height con capas

A veces puede ocurrir que cuando una capa (1) que dentro tiene a su vez otra capa (2) (anidada) dentro, al abrir nuevos divs a continuación el div se presenta debajo de la capa anidada, es decir:

NO SE AJUSTA LA CAPA 1 A LA ALTURA DE LA CAPA 2 (anidada)
y cuando abrimos nuevas capas se nos jode el invento a no ser que usemos height... y no queremos usar height sino que queremos que todo se ajuste en función de la altura de la capa2!

Pues hay un truco que es crear una capa con esta característica:

.ajustar{
clear:both;
}

Entonces la cosa queda así:
<div class="capa1">
<div class="capa2"></div>
<div class="capa3"></div>
</div>
<div class="ajustar"></div>
<div class="capa4"></div>

Con este esquema y con la propiedad clear:both; nos queda la capa4 que se muestra en función del tamaño de la capa2 y 3, es decir que la capa1 se ajusta a sus capas anidadas!!

Joder que lio no? Espero que sirva de algo

martes, 5 de mayo de 2009

Enviar un mail HTML via PHP

Las cabeceras que especifican que un mail es HTML son muy putas y tienen que ser exactas o hay clientes de correo que dan problemas:
Aqui lo dejo para que funcione perfecto (al menos a mi me va bien en varios sitios):

php
$sfrom
=""; //cuenta que envia
$sdestinatario=""; //cuenta destino
$ssubject=""; //subject
$shtml="tu html aqui "; //mensaje
$sheader="From:".$sfrom."\nReply-To:".$sfrom."\n";
$sheader=$sheader."X-Mailer:PHP/".phpversion()."\n";
$sheader=$sheader."Mime-Version: 1.0\n";
$sheader=$sheader."Content-Type: text/html";
mail($sdestinatario,$ssubject,$shtml,$sheader);
?>

lunes, 27 de abril de 2009

Archivo .BAT para subir por FTP

Resulta que un dia tienes que hacer un maldito archivo .bat para subir via ftp otro archivo.

El ftp a usar es el cutre que viene integrado en windows XP y MS-DOS.

Creas un archivo llamado ejecutar.bat (o como quieras) y dentro (en modo de texto pones):

ftp -s:ftpstart.bat
exit

Creas otro archivo llamado ftpstart.bat (o como quieras siempre que no sea ftp.bat o un nombre reservado de msdos... asi que no te la juegues)

open ftp.eldominio.com
nombre_usuario
contraseña
lcd c:
cd www
put claves.txt
bye


ejecutar.bat llama a ftpstart.bat.
Ftpstart.bat abre eldominio.com pone usuario y contraseña y en el directorio local entra en c: y en el directorio remoto en www y cuelga del directorio local claves.txt en el remoto.

Ahora lo configuras a tu gusto.

Si escribes ftp en linea de comandos y luego pones help te saldrán los comandos para hacer subir, bajar etc.

miércoles, 24 de diciembre de 2008

PHP Funcion acentos a accute

Después de diversos problemas con los símbolos de acentos, eñes y demás al enviar formularios PHP a un correo electrónico he visto que la función htmlentities($cadena) te soluciona la vida.

Básicamente convierte una cadena de texto con acentos y simbolos a algo que HTML entiende que son los símbolos especiales (estos de &aacute, &Eacute...)

Intenté cosas como cambiar el encabezado del mail a:
[meta equiv="Content-Type" content="text/html; charset=UTF-8; encoding: UTF-8"> o
[meta equiv="Content-Type" content="text/html; charset=Latin1; encoding: Latin1">
pero no iba la cosa ni patrás.

miércoles, 9 de julio de 2008

Find en linux

sintaxis: find dir (condición)

Los dos principales parámetros son:
-name nm (nm es el nombre del fichero a buscar).
-type f dir (dir es el nombre del directorio a buscar).

viernes, 4 de julio de 2008

Como subir videos de calidad a Youtube

FUENTE: http://www.bujorel.net/tutorial/como-subir-videos-de-calidad-a-youtube/

Hace poco ya anunciaron que iban a subir la calidad (probablemente en cuanto salga la ultima versión de Flash), pero mientras tanto se pueden subir vídeos con una calidad superior a la normal.

En este momento se pueden subir vídeos FLV1 Flash en Youtube y que pasen por debajo del radar sin ser reconvertidos. Solo vale FLV1, VP6 no funciona y será reconvertido.

El limite de Youtube es la duración y el bitrate. La duración tiene que ser como mucho 10 minutos, aunque hasta 11 minutos funcionaria. El bitrate ha de ser siempre por debajo de 350 Kbps. El archivo máximo seria de unos ~27 MB aproximadamente.

Requisitos:
• un vídeo (obvio) y si puede ser que tenga buena calidad
• un codificador - yo he utilizado Super © (basado en FFMpeg) que además es gratuito. Enlace directo: SUPER
• un editor HEX - hay multitud (Hex Source, que viene con Source Edit es gratuito)
MediaInfo - para verificar la información de los archivos FLV antes de subirlos

martes, 1 de julio de 2008

Redireccionar puerto 25 smtp al puerto 587 o otro

Escribe en tu servidor linux esto:

/sbin/iptables -t nat -A PREROUTING -p tcp -m tcp --dport 587 -j REDIRECT --to-ports 25

Y cualquier envio por puerto 587 se redireccionará al puerto 25.
Esto es útil para algunos clientes que tienen telefónica y que tienen cerrado el puerto 25.

martes, 17 de junio de 2008

Editar archivo de configuración php.ini

nano /usr/local/lib/php5/php.ini

Memoria de linux llena sin motivo

Un susto que me he llevado pero que no es problema:
En un servidor linux con 1gb de ram es normal que se llene la memoria?

Por lo visto la ram si no tiene nada más importante en que ocuparse se encarga de guardarse en caché peticiones que se hagan al servidor con lo cual es posible que un servidor con muy pocas peticiones llene su memoria.
Cuando necesite memoria para otras cosas más importantes que cachear borrará caché sobrante.

Pego artículo de Ernesto Perez:

La memoria RAM del servidor se llena

Pues uno de los síntomas típicos de ram llena es que el servidor no logra abrir las sesiones completamente

Normalmente la memoria no se llena de repente, sino que se va notando que el servidor se va llenando.

Podemos monitorear la memoria RAM mediante el comando “free”, por ejemplo:

free -m
total used free shared buffers cached
Mem: 995 970 24 0 63 721
-/+ buffers/cache: 185 809
Swap: 1999 101 1898

¿Qué nos está indicando este comando? Para empezar, por mi parte no considero que tengo problemas con la memoria, veo que a simple vista está todo bien. Pero veamos los detalles:

El servidor tiene 1GB de Ram (reporta 995 pero está bien). De los cuales está usando 970 MB de memoria y tiene 24 libres (no es para asustarse, esperen!).

Estos 970 se pueden desglosar aproximadamente en:

* 63 MB buffers - son memorias de intercambio, que no son permanentes ni obligatorias tenerlas siempre

* 721MB cacheados - son páginas tomadas en algún momento del disco para ser servidas y que por su nivel de acceso el servidor ha decidido guardarlas en memoria para tener más rápido acceso, definitivamente es mejor acceder a la memoria RAM que no a disco; estas páginas pueden ser descartadas, desechadas en cualquier momento, no indican que la memoria está llena sino que el servidor como tiene memoria libre, ha ido viendo las páginas más solicitadas y las ha mantenido en memoria. Eso es buen síntoma.

* 185 de memoria core: Digámosle así, porque no tengo un nombre exacto. (eso de -/+ buffers/cache no me gusta). Esto indica cuál es la memoria que realmente el sistema está usando, tanto para el kernel como para los procesos que están corriendo e indica que es una memoria bloqueada que no puede ser descartada (como sí puede ser el buffer y el caché). Es decir, si esta memoria se acerta al total (995 en mi caso) preocupémonos!!! pues significa que el servidor en cualquier momento se queda sin memoria para asignarle a los procesos.

De swap, tengo 2 GIGAS (normalmente pongo la misma swap que ram, pero en este caso de prueba puse el doble). Y estamos usando 101 megas, no es nada de alarmarse sobre todo que es un momento bien popular para el servidor y hace que tenga algunos procesos que pueda swapear para tener un poco más de memoria core y para cache y demás.

En definitiva. No estamos usando más que 185 megas en RAM de 1GB que tenemos y 101 megas en swap de 2GB, no creemos que el problema sea por memoria llena.

Además hemos implementado un script que chequea cada un minuto la memoria y lo guarda a un archivo, así que cuando el servidor se cae y lo levantamos, verificamos el uso de memoria al momento de la caída, y definitivamente es super normal en ese momento.


Aquí el script:

#!/bin/bash
echo "`date "+%d-%H:%M.%S"`" >> /var/log/memoria .log
/usr/bin/top -bn1 >> /var/log/memoria .log
uptime >> /var/log/memoria .log
cat /proc/meminfo >> /var/log/memoria .log
ps fuaxww >> /var/log/memoria.log
netstat -na >> /var/log/memoria.log

Lo que hace es bien simple, lo ponemos en el crontab cada unos 2 minutos (o un minuto o 3, como deseen) y el scriptcito guardará en /var/log/memoria.log una serie de detalles como procesos corriendo, memoria en uso, tiempo al aire y procesos de red.

lunes, 16 de junio de 2008

Comprimir / descomprimir con Targz

Comprimir:
tar cvzf nombre_archivo.tar.gz /carpeta_a_comprimir

Descomprimir:
tar zxf nombre_archivo.tar.gz

Descargar archivos de un servidor linux a otro

Hay varios programas ftp para linux, entre ellos el ncftp

Antes de nada conectarse al servidor FTP y se accede a la consola donde con comandos unix ls, etc. se puede ver lo que hay.

Para copiar todos los archivos del servidor remoto a nuestro servidor ftp hay que picar:
get -A -R archivo

jueves, 12 de junio de 2008

Añadir alias en archivo de arranque

Siendo el usuario root en /root hay un arhivo oculto llamado .bashrc
Lo editas y puedes añadir los alias de este modo: alias ls='ls --color -h'

(en este caso hacemos que ls lo muetre en color y en megas, kb, etc)

Scandisk o chkdsk para linux:

El programa equivalente es: e2fsck

La unidad debe estar desmontada (umount) para que no hayan problemas.

e2fsck -p -c /dev/hda2

Revisa el disco duro y los sectores defectuosos los guarda en una lista para no grabar ni leer nada en esa zona.

miércoles, 11 de junio de 2008

Definición de unidades montadas en linux (mount) en el arranque

Archivo: /etc/fstab

Espacio libre en disco comandos linux

  • df: Muestra el espacio libre del disco
  • du -u fichero1 … ficheroN: Muestra el total que ocupan los ficheros
  • du -s directorio: Muestra el espacio que ocupa el directorio

Si a estos comandos le añadimos además el parámetro “-h“, las cantidades saldrán en un formato de facil lectura (gigabyte, megabyte, etc.) teniendo en cuenta la cifra.

miércoles, 4 de junio de 2008

DVD ripper

Gratuito y fácil de usar:
Freez DVD ripper

martes, 3 de junio de 2008

Conectar con servidor FTP desde linux

Usando ncftp es así:

ncftp -u nombre_usuario -p contraseña host
Curiosamente no hay que especificar -h para decirle host.

Yo tengo un alias hecho para no tener que escribirlo cada vez.

Subir archivos de un servidor Linux a otro

Hay varios programas ftp para linux, entre ellos el ncftp

Antes de nada conectarse al servidor FTP y se accede a la consola donde con comandos unix ls, etc. se puede ver lo que hay.

Para copiar todos los archivos del servidor local (en este caso de la carpeta home) a un servidor ftp hay que picar:
put -A -R /home /ruta_en_servidor_destino

También nos sirve
put -A -R /home
si ya estamos en el directorio dentro del ftp

domingo, 1 de junio de 2008

Riva FLV Encoder 2.0

El mejor programa gratis que conozco para convertir un AVI a FLV o un convertir MPG a FLV.
Descarga gratuita.
Es el Riva FLV Encoder 2.0.
Enseguida se encuentra via google (en sofchonic se puede descargar gratis sin pagar los sms)

Como reproductor usa el FLV Player

FLV es el formato de Macromedia Flash

Por cierto: Si cuando comprimes un video a FLV te parece que el Riva Encoder se queda colgado tú ni caso, es que al comprimir no tiene ninguna barra de progreso ni nada; espera y acabará.

viernes, 23 de mayo de 2008

Buscar en un linux en todos los archivos

grep -r 'cadena de texto' *
(busca en un directorio y sus subdirectorios una cadena dentro de un archivo binario o de texto)