Apache2 não consegue encontrar uma página recém-criada

Apache2 não consegue encontrar uma página recém-criada

Acabei de instalar um servidor apache no Ubuntu, tudo correu bem e consigo acessar a página inicial. No entanto, quero criar outra página localizada em/var/www/test. Quero poder acessá-lo via endereçohttp://xxx.xxx.xxx.xxx/teste. Criei o diretório, inseri o arquivo html e mudei minha configuração para esta:

<Directory /var/www/>
        Options Indexes FollowSymLinks
        AllowOverride All
        Require all granted
</Directory>

<Directory /var/www/test>
        Options Indexes FollowSymLinks
        AllowOverride None
        Require all granted
</Directory>

Mas infelizmente, quando tento acessar esta página recebo um erro: Not Found A URL solicitada não foi encontrada neste servidor.

Servidor Apache/2.4.29 (Ubuntu)

O que estou fazendo de errado aqui?

Responder1

A correspondência entre o espaço da URL e os arquivos no disco é regida pelo ApacheDocumentRootdiretiva. Se você tiver em seu <VirtualHost>arquivo principal ou de configuração uma linha como:

DocumentRoot /var/www/html

(você provavelmente tem isso configurado /etc/apache2/sites-enabled/000-default.conf), sempre que solicitar ao servidor http://example.com/path/to/file.html, você obterá o conteúdo do arquivo /var/www/html/path/to/file.html.

No seu caso você colocou um arquivo (provavelmente) chamado index.html, /var/www/testmas o servidor está procurando por /var/www/html/test/index.html.

ODiretórioseção que você adicionou especifica apenas permissões e outras opções para /var/www/test, ela não a inclui no caminho de pesquisa do servidor. Além disso, as opções do diretório são herdadas, portanto o /var/www/testdiretório herda as opções de /var/www(não é necessário especificar as mesmas opções novamente).

Responder2

Primeiro, você não precisa criar um novo <Directory>bloco para cada diretório do seu site. Em segundo lugar, se você estiver tentando acessar o novo arquivo sem especificar seu nome, certifique-se de que seja um arquivo de índice. Por exemplo: você criou um /var/www/test/index.htmlarquivo, você tem uma DirectoryIndex index.htmldiretiva (mais exemplos e informações sobre seu uso podem ser encontrados emaqui) e então você tenta acessar pelo seu navegador através http://localhost/testdo ou http://localhost/test/index.html(presumo aqui que você configurou a DocumentRootdiretiva apontando para o /var/wwwdiretório.

informação relacionada