Propósito dos diretórios debian “sites-available” e “sites-enabled”

54

Alguém pode me dizer - em poucas palavras - qual é o propósito desses dois diretórios no Debian?

/etc/apache2/sites-enabled
/etc/apache2/sites-available

Percebo que% diffsites-available/000-default e sites-enabled/default mostram que são idênticos.

O que dá?

    
por aaaidan 11.11.2009 / 01:36

4 respostas

60

sites disponíveis contém os arquivos de configuração do apache para cada um dos seus sites. Por exemplo:

<VirtualHost *:80>
  ServerName site.mysite.com
  ServerAdmin [email protected]

  DirectoryIndex index.php
  DocumentRoot /home/user/public_html/site.mysite.com/public

  LogLevel warn
  ErrorLog /home/user/public_html/site.mysite.com/logs/error.log
  CustomLog /home/user/public_html/site.mysite.com/logs/access.log combined
</VirtualHost>

Quando você quiser adicionar um novo site (por exemplo, site.mysite.com), adicione-o aqui e use:

a2ensite site.mysite.com

Para ativar o site. Quando o site estiver habilitado, um link simbólico para o arquivo de configuração é colocado no diretório habilitado para sites, indicando que o site está habilitado.

    
por 11.11.2009 / 01:42
19

Mais importante que a mecânica do sistema é a lógica ...

O Debian fornece os dois diretórios separados para que, se você estiver gerenciando automaticamente suas configurações do Apache, você possa fazer com que todos os vhosts sejam colocados em sites-available em todas as suas máquinas e, em seguida, vhosts individuais possam ser habilitados no servidor. vai realmente atendê-los. Isso também significa que você pode desabilitar um site quase instantaneamente se ele estiver causando problemas ( a2dissite example.com; /etc/init.d/apache2 reload ).

    
por 11.11.2009 / 05:59
4

Para adicionar aos acima, o arquivo em sites-enabled é um link simbólico para o arquivo sites-available :

ls -l /etc/apache2/sites-enabled/

Não é apenas o mesmo conteúdo, é o mesmo arquivo real!

    
por 08.06.2010 / 14:51
1

Informação importante:

Você deve editar os arquivos somente no diretório sites-available .

Nunca edite arquivos dentro do diretório sites-enabled , caso contrário você poderá ter problemas se o seu editor ficar sem memória ou, por qualquer motivo, receber um SIGHUP ou SIGTERM.

Por exemplo: se você estiver usando nano para editar o arquivo sites-enabled/default e ficar sem memória ou, por algum motivo, receber um SIGHUP ou SIGTERM, então nano criará um arquivo de emergência chamado default.save , dentro do diretório sites-enabled . Portanto, haverá um arquivo extra dentro do diretório sites-enabled . Isso impedirá que o Apache ou NGINX seja iniciado. Se o seu site estava funcionando, não será mais. Você terá dificuldades até descobrir, nos logs, algo relacionado ao arquivo default.save e, em seguida, removê-lo.

No exemplo acima, se você estivesse editando o arquivo dentro do diretório sites-available , nada de ruim teria acontecido. O arquivo sites-available/default.save teria sido criado, mas não causaria nenhum dano dentro do diretório sites-available .

    
por 10.01.2017 / 12:20