Erro de configuração do Apache2: erro “VirtualHost is not closed”

6

Então eu já verifiquei o meu arquivo de configuração e realmente não consigo ver uma instância em que nenhuma tag tenha sido fechada corretamente ... mas continuo recebendo esse erro de configuração ... Você se importaria de dar uma olhada através do erro e do arquivo de configuração abaixo? Qualquer ajuda seria muito apreciada.

FYI, eu já pesquisei a vida fora do erro e examinei o log extensivamente, realmente não consigo encontrar nada.

Erro:

apache2: Syntax error on line 236 of /etc/apache2/apache2.conf: syntax error on line 1 of /etc/apache2/sites-enabled/000-default: /etc/apache2/sites-enabled/000-default:1: was not closed.

Linha 236 do apache2.conf:

# Include the virtual host configurations:                                      
Include /etc/apache2/sites-enabled/   

Conteúdo do 000-default:

<VirtualHost *:80>
        ServerAdmin webmaster@localhost

        DocumentRoot /var/www
        <Directory />
                Options FollowSymLinks
                AllowOverride None
        </Directory>
        <Directory /var/www/>
                Options Indexes FollowSymLinks MultiViews
                AllowOverride None
                Order allow,deny
                allow from all
        </Directory>

        ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
        <Directory "/usr/lib/cgi-bin">
                AllowOverride None
                Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
                Order allow,deny
                Allow from all
        </Directory>

        ErrorLog /var/log/apache2/error.log

        # Possible values include: debug, info, notice, warn, error, crit,
        # alert, emerg.
        LogLevel warn

        CustomLog /var/log/apache2/access.log combined

    Alias /doc/ "/usr/share/doc/"
    <Directory "/usr/share/doc/">
        Options Indexes MultiViews FollowSymLinks
        AllowOverride None
        Order deny,allow
        Deny from all
        Allow from 127.0.0.0/255.0.0.0 ::1/128
    </Directory>

</VirtualHost>


<VirtualHost *:443>
        SetEnvIf Request_URI "^/u" dontlog
        ErrorLog /var/log/apache2/error.log
        Loglevel warn
        SSLEngine On
        SSLCertificateFile /etc/apache2/ssl/apache.pem

        ProxyRequests Off
        <Proxy *>
                AuthUserFile /srv/ajaxterm/.htpasswd
                AuthName EnterPassword
                AuthType Basic
                require valid-user

                Order Deny,allow
                Allow from all
        </Proxy>
        ProxyPass / http://localhost:8022/
        ProxyPassReverse / http://localhost:8022/
</VirtualHost>

UPDATE

Eu tive um monte de outros problemas com a minha instalação, então acabei limpando e reinstalando. Se eu tiver o mesmo problema, vou repassar.

Todos, obrigado pela sua ajuda / sugestões.

    
por splattne 28.06.2010 / 20:56

6 respostas

1

Eu tive o mesmo problema na minha configuração virtualHosts e resolvi-o convertendo o arquivo de formato do Windows para o arquivo de formato Unix.

Todos os caracteres "\ r" (retorno de carro CR) precisam ser convertidos em "\ n" unix (alimentação de linha LF)

    
por 29.01.2011 / 14:59
0

você pode tentar um grep "<Virtualhost>" -r /etc/apache2 para verificar todas as tags de hosts virtuais abertos

    
por 30.12.2011 / 14:07
0

No Windows, o diretório bin do Apache precisa estar em $ PATH ou você precisa navegar até ele. Então você pode correr:

httpd -t

Normalmente, você verá:

Syntax Ok

Se você deseja verificar seus hosts virtuais especificamente:

httpd -S

E ele começará a mencionar cada host para cada porta.

Você recebe o mesmo erro com o httpd -t?

Você pode remover o arquivo 000-default e executar o comando novamente? Se você ainda receber um erro, está procurando no arquivo errado.

A propósito, o seu título é um pouco sugestivo, eu não vejo qualquer menção de "VirtualHost" no erro, o título sugere que deveríamos estar procurando "" sem uma correspondência "" que não é o caso.

allow from

deve ser

Allow from

mesmo vale para

require

deve ser

Require
    
por 22.11.2012 / 19:31
0

Para o bem da posteridade, tive um erro muito semelhante:

Syntax error on line 41 of /etc/apache2/sites-enabled/000-default.save: </VirtualHost> without matching <VirtualHost> section

Abrindo esse arquivo, encontrei um q antes da tag <VirtualHost> de abertura. Não tenho ideia de como chegou lá, mas removê-lo corrigiu o problema e permitiu que o Apache começasse.

    
por 04.02.2013 / 18:19
0

Eu tive o mesmo problema hoje executando o apache 2.4.18. O problema era uma nova linha ausente no final do arquivo. Então, certifique-se de colocar uma nova linha adicional após </VirtualHost>

    
por 06.04.2017 / 16:37
-2

Eu odeio responder até agora no futuro, mas na linha 5 sua tag está malformada nomeadamente %código% deveria estar <Directory />

Eu também tive problemas com caracteres de término de linha entre unix e windows e meus arquivos de configuração do apache.

    
por 23.11.2010 / 17:08