Você obtém esse erro porque, para a2ensite
, você passa o caminho completo para a configuração do seu site. a2ensite
espera que apenas um nome de site seja passado:
a2ensite example.com
Eu criei um pequeno script para adicionar sites no meu servidor e é assim:
#!/bin/bash
echo "<VirtualHost *:80>
ServerAdmin [email protected]
ServerName $1
ServerAlias www.$1
DocumentRoot /var/www/$1/public_html
ErrorLog ${APACHE_LOG_DIR}/error-$1.log
CustomLog ${APACHE_LOG_DIR}/access-$1.log combined
</VirtualHost>" > /etc/apache2/sites-available/$1.conf
mkdir /var/www/$1
mkdir /var/www/$1/public_html/
a2ensite /etc/apache2/sites-available/$1.conf
Isso está funcionando bem.
Eu posso executar esse script como ./newsite example.com
e recebo meu arquivo example.com.conf
em sites-available
e tudo. Mas quando executo a2ensite
, recebo o seguinte erro:
ERROR: Site /etc/apache2/sites-available/example.com does not exist!
É estranho, porque mesmo assim eu crio um arquivo chamado example.com.conf
antes de continuar com esse erro.
Alguma ideia? Isso é um bug?
PS: Apenas os sudoers permitem executar este script.
Tags bash virtualhost apache-2.2 ubuntu