
Eu queria configurar um servidor de teste em minha rede doméstica para que pudesse desenvolver meu site localmente e apenas atualizá-lo quando os problemas fossem resolvidos. Comecei a aprender php neste verão (sou estudante da universidade que frequento), e no trabalho temos o site configurado em um repositório Subversion. Em seguida, fazemos nosso trabalho em um site de desenvolvimento diferente do site ativo. Quando chega a hora de atualizar o site ativo, meu chefe "copia" (presumo que não tenho certeza) os dados do repositório para o site ativo. Parece que meu chefe não precisa alterar nenhum link etc. no código. A razão pela qual acho que "simplesmente funciona" é o fato de que todos que trabalham no site acessam o site de desenvolvimento usando um URL diferente. Minha pergunta é: como faço para conseguir essa mesma configuração de servidor (ou semelhante)? Se você está se perguntando, estou usando o Ubuntu 9.04 desktop edition, com (o que presumo estar instalado corretamente) servidor LAMP.
Responder1
Presumo que "nos bastidores" exista um script que recupera as atualizações mais recentes do repositório e, em seguida, substitui alguns dados. Por exemplo, o site de desenvolvimento é dev.net e o site de produção é prod.net, o script substitui todas as ocorrências de dev.net por prod.net, o script também precisa verificar se a conexão com o banco de dados está apontando para o servidor de banco de dados correto.
Responder2
Use o Apache para hospedar sites. Se algo do apache, mysql, php estiver faltando, você pode instalar usando o apt-get ou synaptic. O site funciona apenas copiando, provavelmente porque são usados links relativos em vez de links absolutos.
Por exemplo, se você deseja vincular a pasta b dentro da pasta a, existem duas maneiras
<a href="b/other.php"> Link </a>
e
<a href="http://localhost/a/b/other.php"> Link </a>
O primeiro é relativo e o segundo é o link absoluto. Se você preparar o site usando apenas links relativos, o site funcionará copiando e colando sem nenhum problema.
Responder3
A razão pela qual ele não precisa alterar os links é provavelmente porque tudo no aplicativo está usando URLs relativos. Portanto, um link para uma página seria "/services.html" em vez de "http://www.meudominio.com/services.html".
O site ativo também pode estar em um repositório; nesse caso, seu chefe pode ter um script que baixa a versão mais recente do repositório de desenvolvimento para o repositório de produção e, em seguida, confirma o repositório de produção.