iniciar instalación de drupal6 en un servidor dedicado (host virtual) [Solucionado]

Estoy intentando instalar drupal6 en un servidor dedicado, la intención es aprender a usar drupal y alojar multiples sitios en el mismo servidor.

Cuando realizo el proceso en mi propio equipo, todo funciona correctamente, a la hora de adaptar el proceso al servidor remoto (es un servidor en mi red local) es cuando me trabo.

El proceso es el siguiente

instalo apache2, mysqlserver, phpmyadmin, php5, php5mysql .... todo lo necesario vamos.

en lugar de instalar drupal desde los repositorios lo hago descargándolo desde la página web, aunque el proceso es exactamente igual en ambos casos, salvo el momento de definir la ruta del directorio raiz de drupal en apache2.

No voy a describir todo el proceso ya que funciona bien en mi propio equipo (localhost) y está muy documentado en internet, así que voy a mencionar lo que creo que tiene relevancia con el error.

una vez configurada la base de datos y el usuario con acceso a la misma, hay que definir en /etc/apache2/sites-enabled/000-default el host virtual. Lo hago así:

<VirtualHost *:80>
   ServerName www.misitio.com
   DocumentRoot /ruta/completa/drupal6/
   <Directory /ruta/completa/drupal6/>
   Options Indexes FollowSymLinks MultiViews
       AllowOverride All
       Order allow,deny
       allow from all
   </Directory>
</VirtualHost>

tambien defino el host en /etc/hosts

127.0.0.1 www.misitio.com

Haciendo esto en mi equipo, simplemente ingresando en www.misitio.com accedo a la instalación de grupal y se realiza sin ningún problema. El problema es cuando intento realizar el proceso en el servidor remoto.

En el servidor remoto, defino de la misma manera en /etc/apache2/sites-enabled/000-default el host virtual

pero claro, definir el /etc/hosts no creo que sea necesario ya que no pretendo acceder al sitio desde ese servidor sino desde mi propio equipo. (aún así lo he probado por descartar cosas)

El problema es que no consigo acceder a esa instalación.

Cuando intento acceder con la ip del server, me tira el mensaje de it works! de apache, pero no se como acceder al host virtual definido en el servidor.

No sé si he conseguido explicar correctamente la situación ni por donde tirar ahora mismo.

¿necesito definir el host virtual del equipo remoto en el mío? Algo se me escapa y no se que puede ser...

saludos a todos y gracias por vuestra atención.

Para eso necesitas poder resolver a la IP del servidor el nombre del sitio.

Cuando tu enviás la petición http (cualquiera, por ejemplo www.esdebian.org) no solo resuelves la IP mediante DNS, cuando te conectas también enviás la URL para que el servidor destino sepa que web entregarte (vamos, sepa que debe entregarte esdebian y no kubuntu-es aún cuando ambas están en el mismo servidor con la misma IP)

Un truco para no tener que modificar el /etc/hosts de tu equipo cliente es configurar tu navegador para que funcione con un proxy, y pones como IP del proxy tu servidor, y como puerto el 80

Luego de eso podrás acceder mediante la URL (funciona con na instalación básica de apache, si agregas módulos como ModSecurity o utilizas SSL ya no funciona)

Gracias pato, al usar el proxy ya puedo acceder a la instalación de drupal, aunque ahora no me funciona :( pero creo que puede ser por la cantidad de cosas que he intentado, creo que será un tema de permisos. Pero creo que ya está solucionado, porque una vez instalado drupal, creando un enlace desde el propio apache ya puedo acceder sin proxy y sin nada. (simplemente poniendo la ip). En cuanto repita el proceso y compruebo que todo funciona bien marcaré como solucionado.

La última cuestión sería... si hago el proceso en un servidor dedicado contratado (del cual dispondría la ip) lo ideal sería realizar el proceso de instalación antes de definir las dns en el hosting contratado configurando el proxy y una vez instalado ya definiría esas dns como se trato en el hilo de sebas. ¿no?

Lo del Proxy es un "truco" temporal y algo chapucero que se me ocurrió cuando en el trabajo no me quedaba otra que utilizar Windows como cliente (en windows no existe nada parecido a un /etc/hosts para modificar, por lo que si no tenes un DNS cagaste).

Lo ideal seria modificar /etc/hosts (si no estas en windows claro, el trabajo a veces lo requiere) y acceder por nombres resolviendo localmente... ya cuando el servidor está depurado y funcionando estableces los DNS.

Gracias pato, marco como solucionado aunque aún no he conseguido iniciar la instalación, al menos accedo a ella que era el problema inicial, cuando limpie todo y lo intente de nuevo si me sigue fallando de forma "remota" pero consigo hacerla de forma local ya retomaré el tema.

Saludos y gracias de nuevo.

bueno, he quitado la marca porque hay algo que no funciona.

No sé donde estará el fallo, pero aunque puedo acceder a la instalación no puedo iniciarla de forma remota (no pasa de la selección de idioma), sin embargo, lanzándola desde el propio servidor con el navegador w3m si que pasa de ese paso.

¿tendrá algo que ver con el usuario de la base de datos? o con el usuario con el que se conecta?
¿cuando me conecto desde mi equipo no tengo permiso de acceso a la base de datos?

Por probar, he puesto permisos 777 a todo el directorio de drupal, así que el problema (si es un problema de permisos) no está ahí, deduzco que puede ser de mysql, pero no entiendo porqué al conectar de forma remota tengo ese problema pero de forma local no...

Bueno, pues al final la solución ha sido simple.

No sé que habría hecho antes pero no me había funcionado y ahora sí.

Definiendo en el servidor en /etc/hosts

127.0.0.1 www.misitio.com

y en mi equipo local tambien en /etc/hosts

ip.del.ser.ver www.misitio.com

ya he podido acceder a la instalación sin configurar el proxy y de esta manera, el proceso de instalación si que se completa adecuadamente.

Muchas gracias y saludos.

Pato Silva escribió:

[...] en el trabajo no me quedaba otra que utilizar Windows como cliente (en windows no existe nada parecido a un /etc/hosts para modificar, por lo que si no tenes un DNS cagaste) [...]

En Windows XP y Windows 2003 Server el archivo HOSTS (y también el archivo SERVICES) está en:

C:\WINDOWS\system32\drivers\etc\

Creo que en Windows Vista la ruta sigue siendo la misma.

Saludos,
Sidd.