XML transition from PHP4 domxml to PHP5 dom
Wednesday, May 28th, 2008http://alexandre.alapetite.net/doc-alex/domxml-php4-php5/index.en.html
http://alexandre.alapetite.net/doc-alex/domxml-php4-php5/index.en.html
Mediante cURL podemos ejecutar acciones en otras webs mediante comandos como si la navegaramos nosotros mismos.
para instalarla:
$ sudo apt-get install curl libcurl3 libcurl3-dev php5-curl
y reiniciamos apache.
la use cuando desarrolle un componente joomla para conectarme a las cuentas de Yahoo, Hotmail y Gmail.
y ahora en Wayne para usar la API de E-bay.
Si eres desarrollador web, te vas a topar en algunas ocaciones en las que los requerimientos exigen tener un host propio para cada aplicacion, o sea, que la aplicacion tenga una configuracion propia y que ello no afecte a las configuraciones de las demas aplicaciones.
Para poder llevar esto a cabo, existe la creacion de Virtual Host, mediante los cuales podemos tener configuraciones de Apache para cada aplicacion como lo requieran.
Para documentacion deVirtual Host: http://httpd.apache.org/docs/2.0/es/vhosts/
Agradecimiento a Aldo de Satio que me ayudo en este tema.
Creacion de un Virtual Host:
la configuracion general por default se encuentra en el archivo:
/etc/apache2/sites-available/default
Lo que vamos a hacer es crear un nuevo archivo con nuestra configuracion, tomo como ejemplo que la aplicacion se llama: ciplex
$ touch /etc/apache2/sites-availabe/ciplex
Ahora abro el archivo para edicion:
$sudo gedit /etc/apache2/sites-availabe/ciplex
el contenido de ese archivo debe ser:
#——————————————————–
NameVirtualHost *
<VirtualHost *>
ServerAdmin yo@dantecaceres.com
DocumentRoot /var/www/ciplex/
ServerName localhost
<Directory /var/www/ciplex>
AllowOverride all
</Directory>
</VirtualHost>
#——————————————————-
Guardamos y lo que vamos a usar es un comando que me permite cambiar la configuracion de apache
$ a2ensite ciplex
relodeamos apache
$ /etc/init.d/apache2 reload
ya tenemos andando nuestro Virtual Host para para nuestra aplicacion ciplex
Si queremos volver atras, a la configuracion por default de apache:
$ a2dissite ciplex
Y vuelve todo a la configuracion por default
Hoy casi cago fuego…..
Por error de la laptop y no mio
cambie la clave de root de mysql desde phpmyadmin pensando que el algoritmo que MyAdmin usaba para los passoword era MD5, luego de la solucion me di con que el algoritmo de encryptacion que usa MyAdmin es “password”.
el Problema: desconozco el nuevo password de root de mysql.
La Solucion:
Stopear el motor y todos los daemons que anden dando vuelta…
$ sudo /etc/init.d/mysql stop
$ killall mysqld
si, mysqld y no mysql porque la “d” es de daemon
vamos a levantar un demonio mysql como usuario root, pero no el root de mysql sino el root del sistema linux (:$, de que estas hablando gato!!) si es asi como lo digo…
$ sudo usr/bin/mysqld_safe –skip-grant-tables&
de esta manera hacemos andar el motor dentro de un daemon con todos los privilegios sobre todas las bases de datos…..
OJO con mandarnos cagadas porque corremos el riesgo de perderlo todo!!
entramos a la consola de mysql
$ mysql - u root
seleccionamos la base de datos mysql (no olvidar que estamos en consola y luego de cada sentencia va punto-y-coma).
$ use mysql;
la tabla en donde se encuentran los usuarios de mysql es justamente… “user”
$ select host, user, password from user;
$ update user set password = password(”nuevo_password”) where user =”root” and host = “localhost”;
notar porque insisto que el algoritmo con el que mysql encripta los password es justamente : password.
$ exit;
ya cambiamos el password del usuarios root, pero el daemon y el motor mysql todavia no lo saben, entonces..
$ sudo /etc/init.d/mysql stop
$ sudo /etc/init.d/mysql start
Listo, me bajaron los gemelos desde la garganta al lugar que les corresponde…….
Hoy, como desde hace tiempo no lo hacia, me encontraba desarrollando sobre la consola Windows usando Dreamweaver CS3 y mientars subia mis codes via FTP lei un mail a cerca de unos updates que debia hacer de otra aplicacion, la cual la tenia guardada en Ubuntu. Obvio no podia reiniciar mi laptop porque se cortaba la subida FTP, entonces , insultando una vez mas a la consola Windows porque su explorador de archivos solo se cierra a extensiones FAT32 y NTFS, puse en google: “acceder a archivos de Linux desde Windows” y los resultados apuntaban a un solo lugar –> explore2fs
Explore2fs es una muy liviana herramienta mediante la cual me permite leer y exportar mis archivos que tenga en particiones ext2,3 dentro de mi sistema. Con esta herramienta pude traer los codes de la aplicacion que tenia en Ubuntu para editarlos desde donde me encontraba.
Un detalle, para ejecutarlo: click derecho sobre la aplacion y seleccionar “run it as Administrator”.
Bueno, ante la necesidad algo hay que hacer..
Si bien no se compara con el potente diccionario Babylon, Ktranslator usa sus recursos para ofrecernos traduccion rapida y eficaz bajo Ubuntu.
# $ sudo apt-get install ktranslator
Una vez instalada, esta herramienta no es nada si diccionarios, entonces descargamos de:
ftp://ftp.ac-grenoble.fr/ge/languages/babylon_dict/EngtoSpa.dic.gz
El diccionario de Babylon, descomprimimos y te renombramos el archivo a “EngtoSpa.dic”
Luego ejecutamos Ktranslator (que no es un diccionario Kirchnerista
, pero si pinguino
)
Y agregamos el path de este diccionario desde Preferences.
Listo, tenemos andando un diccionario en nuestro Linux
El problema:
Hay ocaciones en las cuales el framework en el cual nos basamos para el desarrollo usa algunos tipos de archivos medios raros para la capa de presentacion (Vista), en un patron MVC, tales son los casos:
Kumbia-> usa extension: .phtml
Prado -> usa extension: .page
Smarty -> usa extension: .tpl
Es muy comun (y adoptado por mi), para la edicion de las vistas usar la poderosa herramienta : Dreamweaver.
Pero el problema es que esta herramienta, por default, no soporta estos filetypes mas no tiene soporte auto-complete para los mismos.
La solucion:
Agregar las extensiones que corresponden en un archivo de configuracion de Macromedia.
No debe estar ejecutandose Dreamweaver a la hora de hacer esta tarea.
(Se aplico esta solucion en Dreamweaver 8, desconozco si funciona en CS3)
** UPGRADE: Tambien es esto posible en DW CS3 con la diferencia que el archivo MMDocumentTypes.xml se encuentra en otro path ( actualmente solo puedo correr DW CS3 en la consola Windows):
Dreamweaver CS3 on Windows Vista:
C:\Users\[username]\AppData\Roaming\Adobe\Dreamweaver 9\Configuration
Dreamweaver CS3 on Windows XP:
C:\Documents and Settings\[username]\Application Data\Adobe\Dreamweaver 9\Configuration
De paso, recien me entero que DW CS3 = Dreamweaver 9 ……
** END UPGRADE
Debemos editar el archivo: MMDocumentTypes.xml
que se encuentra en (en mi caso uso Dreamweaver bajo Ubuntu con Wine-doors)
/home/dante/.wine/drive_c/Program Files/Macromedia/Dreamweaver 8/Configuration/DocumentTypes/MMDocumentTypes.xml
en la linea que dice:
<documenttype id=”HTML”
es en donde se colocan las extensiones que nos interesa, entonces al final agregamos:
winfileextension=”html,htm,shtml,shtm,stm,tpl,lasso,xhtml,page,phtml,tpl”
guardamos y listo!!!!
ahora podemos abrir Dreamweaver y editar nuestras vistas como si fueran de estensiones HTML comunes…..
Instalacion de PostgreSql 8.2 en Ubuntu :
# sudo apt-get install postgresql-8.2
Una vez instalado, tenemos el usuario Postgres con una contraseña por default, entonces … a resetearla:
# bash
# su postgres
ejecutamos la utilidad:
# psql
# alter user postgres with password 'mi_password';
# \q
# exit
(por las dudas, el conf se encuentra en
/etc/postgresql/8.2 /main/postgresql.conf
y para reiniciar el servidor:
/etc/init.d/postgresql-8.2 restart
)
Listo… ya tenemos corriendo PostgreSQL en nuestro ubuntu .
Ahora el cliente administrador: PgAdmin3
# sudo apt-get install pgadmin3
Una vez instalado, podemos conectarnos usando la siguiente ocnfiguracion:
Adress: localhost
Description: “localhost” (o lo que sea)
Service: (vacio)
Port: 5432
Maintenance DB: template1
Username: postgres
Password: mipassword
Con esto tenemos un cliente administrador de PostgreSql
si deseamos soporte online, podemos instalar: phpPgAdmin:
$ sudo apt-get install phppgadmin
Esto es lo que mas me gusta ya que esta herramienta esta desarrollada con PHP.
La aplicacion queda instalada en : /etc/share/phppgadmin y todavia no tenemos acceso desde cualquier browser
para ello creamos un alias en el conf de Apache:
# sudo gedit /etc/apache2/apache2.conf
y en la ultima linea agregamos el alias de la siguiente forma:
Alias /phppgadmin “/usr/share/phppgadmin/”
ahora relodeamos apache:
# sudo /etc/init.d/apache2 reload
probamos que podemos acceder desde un browser:
http://localhost/phppgadmin
nos loguemos con los datos : U->postgres, P->mipassword
si vemos que no se puede acceder (cosa que puede ser muy comun), debemos editar el config de phppgadmin:
# sudo gedit /etc/share/phppgadmin/conf/config.inc.php
buscar la variable : $conf[’extra_login_security’] que se encuentra en TRUE y cambiarla a FALSE
Voila!!!!
con esto tenemos 3 cosas andando, Motor de Base de Datos : PostgreSQL, Cliente pgAdmin3 y cliente web phpPgAdmin