
Quería configurar un servidor de prueba en mi red doméstica para poder desarrollar mi sitio web localmente y simplemente actualizarlo cuando haya resuelto los problemas. Comencé a aprender PHP este verano (soy un estudiante trabajador de la universidad a la que asisto) y en el trabajo tenemos el sitio web configurado en un repositorio de Subversion. Luego hacemos nuestro trabajo en un sitio de desarrollo que es diferente al sitio en vivo. Cuando llega el momento de actualizar el sitio en vivo, mi jefe "copia" (supongo que no estoy seguro) los datos del repositorio en el sitio en vivo. Parece que mi jefe no tiene que cambiar ningún enlace, etc. en el código. La razón por la que creo que "simplemente funciona" es por el hecho de que todos los que trabajan en el sitio acceden al sitio de desarrollo utilizando una URL diferente. Mi pregunta es: ¿Cómo puedo lograr esta misma (o similar) configuración de servidor para mí? Si se lo pregunta, estoy usando la edición de escritorio Ubuntu 9.04, con (lo que supongo que está instalado correctamente) el servidor LAMP.
Respuesta1
Supongo que "entre bastidores" hay un script que recupera las últimas actualizaciones del repositorio y luego reemplaza algunos datos. Por ejemplo, si el sitio de desarrollo es dev.net y el sitio de producción es prod.net, el script reemplaza todas las apariciones de dev.net con prod.net, además el script debe verificar si la conexión a la base de datos apunta a la servidor de base de datos correcto.
Respuesta2
Utilice Apache para alojar sitios web. Si falta algo de Apache, MySQL, PHP, puede instalarlo usando apt-get o synaptic. El sitio web funciona simplemente copiando, probablemente porque se utilizan enlaces relativos en lugar de enlaces absolutos.
Por ejemplo, si desea vincular la carpeta b dentro de la carpeta a, hay dos formas
<a href="b/other.php"> Link </a>
y
<a href="http://localhost/a/b/other.php"> Link </a>
El primero es relativo y el segundo es un vínculo absoluto. Si prepara el sitio utilizando únicamente enlaces relativos, el sitio funcionará copiando y pegando sin ningún problema.
Respuesta3
La razón por la que no tiene que cambiar los enlaces es probablemente porque todo en la aplicación utiliza URL relativas. Entonces un enlace a una página sería "/services.html" en lugar de "http://www.midominio.com/servicios.html".
El sitio en vivo también puede estar en un repositorio, en cuyo caso su jefe podría tener un script que descargue la última versión del repositorio de desarrollo al repositorio de producción y luego confirme el repositorio de producción.