Tecnoaxis

09/02/2008

Como mudar un sitio web del servidor local a internet (Gratis!)

Filed under: hosting, programacion, tutoriales, tutoriales web, web 2.0 — Tags: , , , , — Alejandro Rean @ 8:46 am

Seguramente, sobre todo los practicantes de desarrollo web y/o bloggers, en algun momento nos preguntamos si no existía alguna forma, gratuita, de poder tener nuestra página subida a Internet.

En mi caso, comencé entusiasmado desarrollando sitios dinámicos, monté un servidor local (en mi pc) sobre linux, instalé Apache, PHP, MySql… etc, etc, etc… Las páginas funcionaban, gracias al servicio que ofrece CDMON.com para redirección de ip estática a ip dinámica y un cron script que le pingueaba
mi ip, todo era perfecto.

Claro, no duró más que un par de horas ya que cuando uno de mis hermanos quizo usar la computadora, la reinició para usar Windows y al demonio el servidor =). A más de uno le debe pasar! Pueden dejar sus comentarios con historias y peleas familiares si quieren.

Todos sabemos que un sitio web no puede funcionar dos horas de cada cuatro o cinco, por lo que me decidí a buscar una solución URGENTE! Y ahi estaba, esperando por mi… vaya a saber uno con qué intereses, o en realidad sí los sé, pero no podía ser real tanta generosidad. Igual tiene sus pequeños defectos…

A continuación les dejo un sencillo tutorial paso a paso, de esos que a todos nos gustan por su practicidad, para que lo tengan de guía. No se preocupen que una vez que suban un par de sitios ya se acostumbrarán.

Herramientas Necesarias

1. Para realizar la mudanza (también llamado deploying) de nuestro sitio dinámico en internet estas son las herramientas básicas que necesitaremos:

2. Un sitio web ya creado: si vamos a mudar un sitio de nuestro servidor a internet, primero tenemos que tenerlo hecho =D. Llamaré dinámico a todo sitio creado en PHP, con base de datos en MySQL, PostgreSQL o similar. Será de mucha ayuda tener instalado en nuestro servidor local phpMyAdmin.

3. Gestor de FTP: algún programa capaz de conectarse mediante el protocolo FTP para poder copiar los archivos al servidor destino. En mi caso utilizo el gFTP en Linux. Para Windows hay varios, CuteFTP, FTP Explorer, etc. Usen el que más les guste.

4. Ganas y tiempo.

Tutorial
Primera Parte: Ubicación de nuestro sitio en Internet

1. Crear una cuenta gratuita en www.zymic.com. Es tan trivial como crear una cuenta en cualquier otro servicio web.

*Nota: el servicio gratuito de Zymic ofrece 2GB de espacio y ancho de banda de 35GB, PHP/MySQL, administrador online de FTP (totalmente básico, no es muy útil, pero está), HOSTING SIN PUBLICIDAD, un nombre de dominio gratuito (no es .com pero nos sirve igual). Como restricción, admite hasta 5 _bases de datos_ por sitio (no confundir el concepto de base de datos con tabla!). Se puede crear más de un sitio por cuenta. La única conexión entre Tecnoaxis/Yo y Zymic.com es de usuario/proveedor, no me pagan comisión ni me regalan nada por hacer este tutorial, jaja. Fin del disclaimer.

2. Crear un sitio web, yo por practicidad uso la dirección misitio.zxq.net, pero eso queda a criterio de cada uno.

3.a. Copiar mediante el gestor de FTP los archivos a la raíz o a un subdirectorio si así lo desean. Los datos de conexión serían, por ejemplo:

.host: misitio.zxq.net
.puerto: 21
.usuario: misitio@zxq.net

Por supuesto la contraseña es la que indicaron ustedes al momento de crear el sitio en Zymic.

Este paso puede demorar bastante, dependiendo de la cantidad de archivos y carpetas.

3.b. Exportar la base de SQL. Esto lo pueden hacer mientras se copian por FTP los archivos,y
se logra de manera muy sencilla mediante el uso de phpMyAdmin. Luego de loguearse al phpMyAdmin (en su servidor local), en el menú principal hay una opción llamada Exportar (Export), dejan todo como está y le dan continuar. Copian el script arrojado por phpMyAdmin a un documento mediante su editor de textos preferido y lo graban en un archivo .txt (ej.: mibase.txt). No cierren el editor.

3.c. A continuación, desde el panel de control de Zymic, ingresamos al sitio creado y hacemos clic en la opción de editar la configuración de MySQL. Le damos un nombre a nuestra base, que quedará finalmente como misitio_zxq_net_nombrebase. Luego creamos un usuario de la misma forma, qedará como misitio_zxq_net_nombreusuario. Para no mezclar ni confundirnos con tantos nombres podemos usar el mismo tanto para la base como para el usuario. A este usuario le daremos todos los permisos sobre misitio_zxq_net_nombrebase, con la opción que se encuentra debajo, en esa misma página de configuración de SQL.

3.d. Volvemos al editor de texto con nuestro script SQL en .txt, y eliminamos completamente la linea CREATE DATABASE … Además, modificamos en la siguiente linea lo que pone luego de USE reemplazandolo por nuestra base misitio_zxq_net_nombreusuario, cuidando no eliminar las comillas.

3.e. Ingresamos desde el panel de control de Zymic a la administración de phpMyAdmin. Vamos a Importar (Import), damos clic en Explorar (Browse) y elegimos nuestro script .txt. Si el archivo es muy pesado y es rechazado, podemos comprimirlo en formato zip y volver a intentar subirlo, ya que también lo reconoce.

4. Una vez finalizada la copia de archivos con el gestor de FTP, sólo nos queda adaptar los archivos de configuración del sitio dinámico (seguramente llamados config.php, wp-config.php en el caso de wordpress, etc.) y alguna cosilla más que depende del sitio que tengamos, a esta altura supongo que ya saben como arreglarse ;) , además sería muy dificil considerar acá todas las reconfiguraciones posibles. Prestar atención al archivo .htaccess, sobre todo si en nuestro servidor local teniamos al sitio en un subdirectorio, y en el servidor Zymic lo copiamos a la raíz. El resto es prueba y error.

Observaciones adicionales: ya he subido varios sitios a este servidor y me funciona bastante bien, al principio tuve problemas con el FTP pero aparentemente hace un par de días lo solucionaron. Los gestores de contenido que probé satisfactoriamente son Joomla!, Wordpress y Drupal. Con Elgg aún no pude lograr que funcione debido a una de las limitaciones actuales del servidor, aunque quizás exista algún workaround.

Limitaciones del servidor: nada es perfecto. El servidor tiene la opción de safe_mode = on, con lo cual algunos gestores de contenidos pueden no funcionar. Además, no estoy muy seguro del funcionamiento del módulo rewrite_base, aunque como les dije Joomla!, Wordpress y Drupal funcionaron sin problemas.

Segunda Parte): Registro en Nic.ar y delegación de DNS mediante CDMON.com (también gratis!)

1. Ingresar a http://www.nic.ar y registrar su dominio (válido para Argentina) .com.ar, .net.ar ó .org.ar, siguiendo las instrucciones ofrecidas en la página.

2. Si ingresaron correctamente los datos del registro, nic.ar enviará un e-mail a la casilla indicada, el mismo deberá ser re-enviado SIN MODIFICACIONES. No dejen que su administrador de correos le agregue simbolitos ni nada raro porque el bot de .nic.ar que luego toma la solicitud puede no reconocer los datos, y es muy probable que no lo haga si se agregaron caracteres!

3. Unas horas después van a recibir un e-mail de notificación, informando que ya se encuentra en trámite el regitro.

4. Si tienen suerte en mas o menos una semana ya está disponible el sitio. Pero todavía hay más! Así que al menos tienen unos minutos más para entretenerse.

5. Ingresar a www.cdmon.com y crear una cuenta. Luego desde el panel de control, seleccionan la opción Gestión de DNS Estático y añaden la dirección de su dominio recién registrado (ej.: misitio.com.ar). Seleccionamos el dominio añadido y presionamos el botón Gestionar. Hacemos clic en el ícono de herramientas/configuración de Redirección por URL e ingresamos la dirección de Zymic de nuestro sitio (ej.: misitio.zxq.net).

6. Volviendo a la Gestión de DNS Estático, verán tres direcciones de servidor DNS de CDMON, de las cuales deberán ingresar al menos las dos primeras en la configuración de su dominio en nic.ar. Esto se hace una vez que se haya efectuado el registro del dominio, lo cual pueden verificar ingresando en http://www.nic.ar, Trámites vía web, en el cuadro de Trámites por nombre de dominio. Una vez que se encuentre en estado FINALIZADO, regresan a Trámites vía web y en Modifcaciones/Delegaciones, ingresan los dos servidores DNS de CDMON, que nombré al principio de este punto.

Hasta aquí el tutorial, espero que les haya sido útil!

Como ejemplo pueden ver estos sitios que tengo alojados ahí:
www.alejandrorean.com.arastrosignos.zxq.net (proximamente www.astrosignos.com.ar)

Por cualquier duda o aclaración/colaboración que quieran hacer para con este tutorial, pueden dejar su comentario aquí debajo.

>> Ver más novedades en Tecnoaxis… | Ver Tecnoaxis desde la PDA


Copyright 2007 Tecnoaxis – Este feed es para uso privado, cualquier duda o consulta comunicate por mail conmigo a alejandro.rean@gmail.com.

10/01/2008

Información SEO de tu sitio web, Xinu vs. URLInfo

Filed under: comparativas, seo, tutoriales — Tags: , , — Alejandro Rean @ 2:35 pm

Visto que en PuntoGeek se comentó recientemente en un artículo la página URLInfo, y en CodigoGeek la página Xinu Returns, se me ocurrió realizar rapidamente una comparativa de ambos, analizando sus pro y sus contras. Se tratan de herramientas tanto SEO como para desarrolladores, que facilitan la validación y evaluación de nuestro dominio/sitio en varios servicios.

Xinu Returns vs. URLInfo

Aspecto Visual
Total: Xinu 1 – URLInfo 0

En primer lugar, cabe destacar que Xinu es mucho más agradable a la vista, con una interfaz “amigable” nos muestra los resultados en unos cuadros divididos en categorías: Diagnóstico, Dominio, Ranking, Sindicación, Bookmarks en redes tipo digg, Validaciones, Páginas Indexadas en buscadores y Backlinks. También nos muestra un thumbnail de nuestro sitio mediante Snap*.

En cambio, en URLInfo los resultados no son recogidos de inmediato de los distintos servicios, sino que genera un menú en la parte superior donde nos permite seleccionar el dato que queremos saber, y una vista de nuestro sitio en toda la pantalla.

Velocidad
Total: Xinu 1 – URLInfo 1

En la cuestión velocidad, gana URLInfo, ya que al ingresar la dirección de nuestro sitio no comienza a recorrer los distintos servicios recabando la información, sino que nos muestra un menu y nosotros seleccionamos con qué servicio queremos validar/evaluar nuestro sitio.

Nivel de detalle
Total: Xinu 1 – URLInfo 2

Logicamente, al redirigirnos URLInfo al sitio original en el que se realiza la consulta, el nivel de detalle es mayor. Incluso la cantidad de evaluaciones que se pueden realizar es mayor, y las validaciones formales (HTML, CSS, etc…) son más, lo cual puede significar una gran ventaja si lo que se buscaba era principalmente validar el código de nuestro sitio.

Calidad de la Información
Total: Xinu 1 – URLInfo 3

No es fácil realizar una comparación en este aspecto, pero se puede deducir que al no pasar por un post-proceso, URLInfo muestra información fidedigna sin ninguna duda. No así Xinu, que puede dejar algo en el camino entre la entrada de información y la salida en los cuadros de resultado.

Utilidad Estadística
Total: Xinu 2 – URLInfo 3

Si de llevar a cabo una estadística se trata, nos va a resultar muchísimo más práctico utilizar el servicio que nos brinda Xinu, el cual nos permite exportar los resultados a un archivo .PDF. Se puede realizar la consulta periódicamente y realizar un archivo de los ficheros PDF para posteriormente realizar un análisis estadístico de la evolución de las consultas.

RESULTADO FINAL: Xinu 2 – URLInfo 3

Conclusión:

Si nuestra consulta es específica, y lo que queremos es atacar a la evaluación o validación de un aspecto en particular de nuestro sitio (posicionamiento en buscadores, validación del código, backlinks, etc…) URLInfo es por lejos la opción a utilizar.

En el caso de querer dar un vistazo rápido, o simplemente por curiosidad, directamente deberán dirigirse a Xinu Returns, donde podrán obtener una macrovisión de las distintas evaluaciones que pueden realizarse sobre el sitio en cuestión.

Para los estadistas, Xinu Returns tiene lo que se busca, una salida a .PDF que se puede almacenar, posibilitándonos comparar los resultados obtenidos en distintas consultas.

[Ver más en: Codigo Geek, PuntoGeek] | vínculos en español

[Ver más en: Xinu Returns, URLInfo] | vínculos en inglés

>> Ver más novedades en Tecnoaxis… | Ver Tecnoaxis desde la PDA


Copyright 2007 Tecnoaxis – Este feed es para uso privado, cualquier duda o consulta comunicate por mail conmigo a alejandro.rean@gmail.com.

08/01/2008

Guia rápida para crear un sitio en PHP con CakePHP #1

Filed under: apache, cakephp, mysql, php, tutoriales, tutoriales linux — Tags: , , , , , — Alejandro Rean @ 4:00 am

La mayoría de las veces cuando uno tiene una idea suele no saber por donde empezar, así que la mejor forma es seguir alguna guía contada por alguien que ya pasó por esa experiencia.

No soy un experto en el tema, pero la intención es lo que cuenta, y mi intención es ayudarlos a que tengan considerablemente rápido configurada su pc para poder empezar a crear sitios en PHP.

Antes que nada, nobleza obliga, debo decirles que existen alternativas a PHP/CakePHP, como sería Ruby On Rails, un framework que últimamente está dando mucho que hablar, así como Django. Pero si están convencidos que lo que ustedes quieren es PHP, allá vamos …

Para empezar, vamos a aclarar qué es lo que necesitamos:

  • El servidor HTTP: Apache
  • El administrador de bases de datos: MySQL
  • Las librerías de PHP
  • El framework: CakePHP

No voy a extenderme en los detalles de cada uno de los pasos, sino que simplemente los voy a guiar con links útiles a páginas de personas que pueden explicar mejor que yo como instalar y configurar los distintos complementos.

El servidor HTTP

Es lo que permitirá comunicar nuestro sitio con Internet y nuestros futuros visitantes. En el caso de que ya tengamos contratado un servicio de hosting, también podemos utilizarlo como servidor de testing como conexión localhost.

Para descargar el servidor apache pueden hacerlo desde su página oficial. También pueden encontrarlo en los repositorios de su distribución de linux. En el caso de Ubuntu y Debian la descarga e instalación se puede hacer mediante el siguiente comando: sudo apt-get install apache2.

Lo que debemos tener en cuenta al configurar el servidor Apache, es el puerto que aceptará las conexiones http. Esto podemos modificarlo desde el archivo ports.conf, que se encuentra en el directorio donde se realizó la instalación de Apache (por ej.: /etc/apache2/).

Además, para el uso que le daremos nosotros vamos a necesitar añadir las siguientes líneas al archivo httpd.conf:

AddType application/x-httpd-php .php .phtml
AddType application/x-httpd-php-source .phps

Esto permitirá que Apache reconozca los archivos de PHP como páginas navegables.

También deberemos habilitar el módulo rewrite de Apache, ejecutando el siguiente comando desde la consola de linux: a2enmod rewrite . Lo que hace este comando es automaticamente copiar los archivos del directorio mods-available al directorio mods-enabled, en este caso el módulo rewrite (rewrite.load).

En esta página pueden encontrar más info acerca de cómo configurar un servidor Apache.


El administrador de bases de datos

La instalación de MySQL también es sencilla, desde la página de downloads del sitio MySQL AB pueden descargar la última versión de este DBMS. Los usuarios de Ubuntu y Debian pueden encontrarlo en los repositorios bajo el nombre mysql-server-5.0, y con el siguiente comando desde la consola realizamos la descarga e instalación: sudo apt-get install mysql-server-5.0 .

Otras herramientas que nos serán de utilidad son el MySQL Query Browser y el MySQL Administrator, que no recuerdo si se instalan por defecto, pero pueden hacerlo en Ubuntu y Debian con el siguiente comando: sudo apt-get install mysql-admin mysql-query-browser .

No entraré en detalles acerca de cómo crear bases de datos (trivial: create database nombredelabase;), ni de como usarlas (trivial: use nombredelabase;), ni de como crear tablas, realizar consultas, etc… Para eso les voy a recomendar un libro llamado Beginning SQL, cuya descarga pueden realizar desde este link torrent.

Sólo diré que pueden ingresar sentencias desde el intérprete de mysql, ejecutando desde la consola: mysql -u usuario -p, donde -u usuario nos conecta al usuario seleccionado y -p nos permitirá ingresar la clave del usuario. Otra forma de hacerlo es mediante el MySQL Query Browser, donde podremos ejecutar sentencias individuales e incluso scripts, y donde las consultas se nos presentarán en un bonito formato gráfico.

Para administrar los usuarios podemos hacerlo ya sea desde el intérprete (ver Tutorial de SQL en Desarrollo Web para más sentencias SQL), o desde la aplicación MySQL Administrator.

En la próxima entrega de la guía trataremos la instalación de PHP y el framework CakePHP. ¡No se la pierdan!

Espero que les haya sido útil. Nos vemos en la segunda parte.

>> Guía rápida para crear un sitio en PHP con CakePHP #2 (disponible en unas horas)

>> Ver más novedades en Tecnoaxis… | Ver Tecnoaxis desde la PDA


Copyright 2007 Tecnoaxis – Este feed es para uso privado, cualquier duda o consulta comunicate por mail conmigo a alejandro.rean@gmail.com.

03/01/2008

El gran paso: de Windows a Linux #2

Filed under: linux, tutoriales linux — Tags: , , — Alejandro Rean @ 9:17 pm

Finalmente, me decidí a escribir la segunda parte del tutorial El gran paso: de Windows a Linux, asi que acá está, espero que les sea de utilidad.

En esta parte del tutorial veremos cómo importar lo que teníamos en el sistema operativo de las ventanitas, hacer un backup de la información importante, y cómo particionar el disco duro para poder instalar la distribución de GNU/Linux.

Backup de Información Personal

En primer lugar, nos ocuparemos de resguardar nuestra información guardada en las carpetas personales, los archivos de cada usuario se encuentran, en el caso de Windows 98 en la carpeta C:\Mis Documentos\, en el caso de Windows XP en C:\Docuements and Settings\ y en el caso de Windows Vista en C:\Users\, siempre suponiendo que C: es la unidad donde tenemos instalado el sistema operativo.

(Nota: El instalador de Ubuntu a partir de la versión 6.04 permite importar la información de varias aplicaciones de Windows, en caso de que queramos mantener ambos sistemas y no borremos la partición en la que se instaló Windows, podemos aprovechar dicha utilidad, cuyo uso se explicará más adelante, al momento de la instalación.)

Particionado del Disco Duro

Luego, deberemos preparar el disco duro para poder instalar nuestra distribución preferida de Linux (en mi caso Ubuntu).

Para hacerlo tenemos dos opciones:

1. Desde Windows, utilizando la aplicación Acronis Disk Director.

2. Desde un LiveCD de Linux, utilizando la aplicación GParted o QTParted (ambas son extensiones gráficas del utilitario parted, para Gnome y KDE respectivamente, por lo tanto suele venir alguna de las dos en todas las distribuciones).

Debemos crear nuestras particiones de la siguiente forma:

1. Crearemos una partición en formato ext3 preferentemente (puede ser ext2 o RaiserFS) que montaremos como raíz “/”, y será donde se instalará el sistema operativo propiamente dicho, al menos debemos hacerla de un tamaño mínimo de 2,5 GB.

2. Si quisieramos podríamos crear sólo una partición raíz y todo funcionaría, pero la ventaja de Linux es que el sistema de archivos y montaje nos da la posibilidad de estratificar nuestra información. Así que yo recomiendo crear una partición que montaremos en la carpeta que contendrá los datos de los usuarios “/home” o incluso una para cada usuario si ya sabemos de antemano quienes utilizaran la PC, lo montaremos entonces en “/home/nombre_de_usuario”. Esta partición también debe ser ext3 (o ext2 o RaserFS). A esta partición le podremos dar la dimensión que deseemos, pero se recomienda al menos darle 1 GB ya que los administradores de escritorio (KDE y GNOME), que para simplificar los llamaremos GUIs (interfases gráficas), guardan la configuración de sus programas en el sub-directorio de cada usuario en /home,

3. No es mala idea crear una partición Swap (de archivos de intercambio), que se encargará de manejar la memoria virtual, pasando datos de programas temporalmente inutilizados de la RAM al disco duro, para tener un acceso más rapido al volver a utilizarlos (en el espacio de Swap se mapean páginas de direcciones de memoria RAM). A esta partición le daremos un tamaño que dependerá de la memoria RAM que posee la PC, si tenemos de 512 MB para abajo, un valor performante sería el doble de dicha memoria, es decir: a 512MB de RAM, Swap de 1GB. En caso de tener una memoria superior a 512, 1024 por ejemplo, le daremos también 1024, y en caso de ya superar los 2 GB, con la mitad alcanza, por lo que: a 2048 MB de RAM, Swap de 1 GB, y así sucesivamente para 2, 4, etc…

4. En el caso de mantener Linux paralelo con Windows, puede ser conveniente crear una partición para leer y escribir datos desde ambos sistemas, utilizando el sistema de archivos FAT32.

En la próxima entrega de este tutorial veremos el proceso de instalación, en este caso, de la distribución Ubuntu Linux, pero que tiene muchos puntos en común con la instalación de otras distribuciones.

<< El gran paso: de Windows a Linux #1

>> Ver más novedades en Tecnoaxis… | Ver Tecnoaxis desde la PDA


Copyright 2007 Tecnoaxis – Este feed es para uso privado, cualquier duda o consulta comunicate por mail conmigo a alejandro.rean@gmail.com.

Powered by WordPress