Sep 07

Para los que sean usuarios de HostGator y noten a faltar soporte para PHP5 o acceso por SSH, en mi opinión un par de ingredientes esenciales, unas notas rápidas de como conseguirlo y unas opiniones finales acerca de este hosting.

Acceso por SSH

Todos los planes de hosting de HostGator ofrecen acceso por OpenSSH aunque por defecto viene desactivado por razones de seguridad. Para activarlo es muy sencillo, sólo se trata de enviarles un email o abrir un ticket en su apartado de soporte y adjuntarles una foto de tu DNI u otro documento oficial, como el pasaporte, donde aparezca claramente tu fotografía. En pocos minutos te darán acceso a un entorno Jail bastante decente, con utilidades como tar, mysql, vim, cvs, find, grep, etc.

Soporte PHP5

Si quieres que tu site corra en PHP5 en lugar del desfasado PHP4 que viene por defecto se trata de añadir a tu .htaccess una de las siguientes líneas:

En una cuenta sin PHPSuExec:

AddType application/x-httpd-php5 .php

En una cuenta con PHPSuExec (todas las cuentas recientes):

AddHandler application/x-httpd-php5 .php

Para saber que línea añadir ejecuta un phpinfo() y fíjate en el apartado “Server API”, si pone “CGI” tu cuenta corre en un servidor con PHPSuExec, si pone “apache” no.

Opiniones

Sin ánimo de que este post parezca un reviewme :) he de reconocer q después de varios añitos trabajando con hostings HostGator es bueno, bonito, barato. En mi opinión sólo tiene dos inconvenientes:

  • al igual que cualquier servicio de hosting compartido en el servidor donde está tu site corren otros y en ocasiones si uno de ellos tiene mucho tráfico o consume mucha CPU tu web va como el culo. Otra desventaja es que también compartes IP y puede que alguno de tus “vecinos” tenga una web de dudosa reputación con lo que te puede perjudicar de cara a Google (puedes revisar que está corriendo en tu IP con un reverse DNS lookup).
  • al ser un hosting americano tu IP no es española y esto Google cada vez se lo está tomando más en serio para decidir en que idioma está tu página. En la Google BlogSearch ya está activo, esperemos q no empiecen a darles más peso en el posicionamiento en la búsqueda web, algo que en mi opinión sería un gran error

El otro conocido competidor de HostGator es DreamHost el cual también tiene unos precios y servicios muy atractivos, personalmente prefiero HostGator, he trabajado con ambos y quizás fue casualidad, como casi siempre, pero los técnicos de DreamHost son muy leeentos en responder cualquier consulta.

Lo ideal y que llevo tiempo dándole vueltas, un hosting español con IP española, por supuesto, pero joder QUE CAROS!! ferca networks, hostalia, gravitynet… sisi bonitos pero de baratos nada, a ver quien me da 1000GB de transferencia, dominios, subdominios y bases de datos ilimitadas por 7 ridículos euros al mes :) si alguien conoce alguno que se le parezca y en España que no se corte y deje un comentario!

PS: ya sé que la limitación de transferencia es una cuestión de los altos costes que tiene el ancho de banda en nuestro país en comparación con USA (aunque no tanto dependiendo del volumen), pero las demás limitaciones que te ponen son ganas de exprimir al usuario sin razón, como la limitación del número de dominios.

Tagged with:
Jun 13

En muchas ocasiones disponemos de un servicio de hosting compartido que no tiene las PEAR instaladas, o que ofrece una instalación mínima que no incluye las clases que necesitamos. A continuación describo como realizar una instalación local de las PEAR en un servidor compartido usando la linea de comandos o un navegador web. A parte de instalaciones en servicios de hosting estos procedimientos resultan muy útiles en otras ocasiones, por ejemplo si queremos probar nuevas clases o distintas versiones de clases sin necesidad de instalarlas en el sistema.

Instalación por consola

Si disponemos de acceso SSH, Telnet, o directo a la consola del servidor este es el procedimiento a seguir.

[1] Iniciamos la sesión de usuario.

[2] Creamos una configuración por defecto para las PEAR:

$ pear config-create $HOME .pearrc

[3] Creamos un directorio temporal en nuestra cuenta para evitarnos problemas de permisos en el directorio “/tmp” del sistema:

$ mkdir $HOME/tmp

[4] Cambiamos las variables necesarias para que trabajen con nuestro directorio temporal:

$ pear config-set download_dir $HOME/tmp/download
$ pear config-set temp_dir $HOME/tmp

[5] Verificamos la correcta configuración:

$ pear config-show

[6] Instalamos el sistema base:

$ pear install -o PEAR

[7] Instalamos las clases PEAR que necesitemos:

$ pear install <clase>

o si queremos instalar alguna versión beta:

$ pear install <clase>-beta

Instalación vía web

Si sólo disponemos de acceso por FTP o Web (como yo con HostGator) o si no queremos trabajar con comandos estos son los pasos necesarios para realizar una instalación vía web.

[1] Vamos a http://go-pear.org/ y guardamos el script PHP que aparece como go-pear.php.

[2] Creamos un directorio en nuestro servidor, por ejemplo “pear”, y copiamos go-pear.php dentro.

[3] Abrimos con un navegador la URL correspondiente, por ejemplo:
http://ejemplo.com/pear/go-pear.php

[4] Seguimos los pasos que nos aparecen por pantalla, las opciones por defecto son válidas en la mayoría de ocasiones.

[5] Posteriormente podremos gestionar las clases PEAR instaladas abriendo:
http://ejemplo.com/pear/
Allí nos encontraremos el Web-based PEAR Frontend que nos permitirá instalar, desinstalar y actualizar clases, buscar nuevas clases, cambiar la configuración, etc.

[6] Es importante proteger el directorio de las PEAR para que no sea accesible al público. Al estar dentro del DocumentRoot del servidor Apache cualquiera podrá acceder a la configuración de nuestras PEAR a no ser que protejamos el directorio con usuario+contraseña y/o filtrando por IP.

Snapshot del frontend web de las PEAR:

PEAR Frontend snapshot

Configuraciones finales

Una vez completado con éxito cualquiera de los dos procedimientos anteriores sólo nos faltará añadir el directorio que contiene las clases PEAR, en el ejemplo “pear/PEAR”, al include_path del PHP para que funciones como include() y require() puedan encontrar las nuevas clases:

[php] set_include_path(get_include_path().PATH_SEPARATOR.’/home/usuario/pear/PEAR’); [/php]

Se ha de cambiar “/home/usuario” por la ruta física a tu home de usuario. En el último paso del proceso de instalación vía web se muestra la ruta física a las clases, si has realizado una instalación por consola teclea pwd en tu home y añade “pear/PEAR”.

Tagged with:
preload preload preload