Is it not possible to in some way copy the entirety of the Apache 2 settings and sites on my Ubuntu machine and put them on my Linux Mint machine in one go?
Presumindo que não sejam versões do Apache muito diferentes, sim. As distribuições pré-configuram o apache com pequenas diferenças (por exemplo, a localização da raiz da Web), mas se você estiver copiando na sua configuração e colocar tudo no mesmo lugar, faça isso por atacado. Como em substituir a configuração, não mexa em editá-lo da mesma maneira. Esteja ciente de que a localização dos arquivos conf do apache é compilada no binário do apache e pode diferir de distro para distro. O que há nos arquivos conf, no entanto, é portátil, portanto, você deve substituir os arquivos pelos seus. Além da localização do arquivo conf, o comportamento do apache é determinado pelo que está no (s) arquivo (s) conf, portanto, se você substituí-lo, então, por exemplo, a raiz da web será determinada pela sua "nova" configuração. Outro detalhe aqui, como você percebeu, é o material em /etc/hosts
.
Às vezes, o Apache usa partes semi-independentes (por exemplo, php) que possuem sua própria configuração. Se você sabe que está usando algo assim, precisa fazer um pouco de lição de casa para descobrir os detalhes.
Isso levanta a questão de como você mantém o servidor com backup ; se você fizer isso de forma coerente, é apenas uma questão de implantar o backup em outra máquina (ou seja, como se tivesse sido totalmente fubarred). Por "backup do servidor" eu não quero dizer todo o seu sistema de arquivos, ou o binário do apache, que já é efetivamente feito o backup, porque é um pacote de distribuição. Quero dizer tudo na raiz da Web (por exemplo, /var/www
) - todos os arquivos de dados, scripts, etc. que o servidor usa - e a configuração, que provavelmente está em algum lugar em /etc
; Como mencionado este local é variável, mas compilado em apache, o que significa que se você quiser implantar em uma distro diferente, você pode ter que colocar o arquivo conf (s) em um lugar diferente.
Como exatamente você faz isso depende da natureza do seu servidor. Se você está servindo várias coisas que são em si projetos autônomos, esses projetos devem ser copiados de forma independente; isso deve incluir alguma documentação sobre como eles devem ser implantados e o que eles exigem, possivelmente incluindo trechos de configuração do apache, se apropriado. Isso significa que o projeto pode ser facilmente instalado em qualquer apache. Se o servidor é dedicado a uma coisa, você pode apenas fazer o backup de toda a raiz da web. No primeiro caso (vários projetos independentes), usar alguma forma de VCS é bom (essas são boas coisas para aprender a usar minha preferência pessoal é git
, mas há muitos outros), no último (uma raiz web megalítica) algo como rsync
- mas essas são apenas sugestões. O ponto é que você deve ter uma ferramenta com a qual esteja confortável para coisas como essa (fazendo backup seletivo de subárvores de diretório em um sistema de arquivos). A maneira mais simples em uma pequena instalação é provavelmente apenas tar
(ou zip).
Se você estiver usando um banco de dados de back-end com o apache, também será necessário fazer o backup nas mesmas linhas - os dados e a configuração, mas se o banco de dados for usado por vários projetos diferentes cujo backup é feito de forma independente deve ser feito backup deles.
Então, se você manter um backup desse tipo, tudo o que você precisa fazer para "duplicar seu apache" é instalar o apache, depois implantar o backup - você untar, rsync, git clone, seja qual for, as várias partes, copie a configuração no lugar certo e pronto.
Você pode então ter um problema com o software ausente - as distribuições podem agrupar os módulos do apache de maneira diferente, você precisa do sql etc. - mas isso é bastante simples.