Servidor Apache 2 no Ubuntu 14.04 - Erro 404 [Resolvido]

Publicado por Eduardo Garbin em 30/04/2014

[ Hits: 92.098 ]

Blog: https://twitter.com/duda_garbin

 


Servidor Apache 2 no Ubuntu 14.04 - Erro 404 [Resolvido]



Saudações, pessoal.

Vou colocar uma ajuda que foi muito valiosa nos últimos dias.

Em necessidade de estudar PHP, fiz a instalação do Apache 2, PHP 5 e MySQL (ótimo tutorial no canal Evoluindo Comigo).

Tudo funcionando.
Exceto, por um detalhe: Apache não encontra as páginas que coloco no diretório /var/www/, ou seja, dava o ERRO 404:

 Not Found
 
 The requested URL /localhost/info.php was not found on this server.
 
 Apache/2.4.7 (Ubuntu) Server at localhost Port 80


Todas as devidas permissões estavam dadas e nada corrigia a situação.

Depois de muito vasculhar a WEB, achei uma solução.

No Ask Ubuntu, houve uma dúvida semelhante e a resposta do usuário Frank, foi direta ao ponto:

Na pasta /etc/apache2/sites-enable, temos um arquivo chamado 000-default.conf.

Abra este arquivo como root. Após logar como root no terminal (Ctrl+t,) você pode usar o comando:

# gedit /etc/apache2/sites-enable/000-default.conf

Observe que ele possui um campo, como abaixo:
        ServerAdmin webmaster@localhost
    DocumentRoot /var/www/html

A segunda linha lhe parece familiar? Se você já entrou na pasta /var/www, com certeza é.

O problema está justamente nessa configuração. O Apache está configurado para procurar a página dentro da pasta html e não da pasta www, assim, temos que apagar a parte html da configuração, que ficará assim:

    ServerAdmin webmaster@localhost
  DocumentRoot /var/www/

E, bingo! Agora o Apache acessa direitinho as pastas e arquivos.

Agora, você pode também criar pastas e inserir páginas nelas sem problemas, como em: localhost/PHP_TESTE/index.php


E por aí vai.

Espero ter ajudado.
Um abraço a todos.

Outras dicas deste autor

Erro 404 - Servidor HTTPD (Apache-2) no Fedora 23 [Resolvido]

Manjaro Linux - Dualboot com W8, W8.1 e W10

Controle de brilho no Fedora 23

Ubuntu 13.10/14.04 em dual-boot com Windows 8

Leitura recomendada

Validar máscara e IP inicial da rede com PHP

jQuery + PHP = Monitor de status

Envio de SMS pelo PHP

js-bwm: monitorando seu link de internet em tempo real

Exportando lista de MSN

  

Comentários
[1] Comentário enviado por atlon em 04/05/2014 - 15:46h

Valeu pela dica, um detalhe que faz toda diferença.. kkkk me salvou !!!

[2] Comentário enviado por egarbin em 05/05/2014 - 12:45h

Fico feliz que tenha ajudado! \o/

[3] Comentário enviado por rabay em 07/05/2014 - 22:24h

VALEU! salvou geral aqui

[4] Comentário enviado por flaguto em 08/05/2014 - 18:34h

Olá Eduardo Garbin, boa noite

Minha duvida ainda sobre o seu post que na minha versão do apache2 é 2.4.9, fiz a mudança sugerida que no meu caso funcionou pela metade rs.
Nesta linha gedit /etc/apache2/sites-enable/000-default.conf

para é assim

gedit /etc/apache2/sites-enabled/000-default.conf.

Ainda não encontrei ajuda sobre isso.
Seu post quase me ajudou aqui.

Abraços
Flavio

[5] Comentário enviado por egarbin em 08/05/2014 - 19:26h

Boa noite Flavio,

Me desculpe, mas não entendi o trecho "Nesta linha gedit /etc/apache2/sites-enable/000-default.conf

para é assim

gedit /etc/apache2/sites-enabled/000-default.conf."

A diferença é o ponto no final?

[6] Comentário enviado por flaguto em 08/05/2014 - 20:15h

Olá Eduardo,


gedit /etc/apache2/sites-enable/000-default.conf aqui é enable
gedit /etc/apache2/sites-enabled/000-default.conf esta na palavra enabled

Mas a questão é mesmo tirando a pasta html não funciona arquivos salvos na pasta www/ por exmplo index.php ou qualquer arquivo em .php, pois a pagina do localhost ou 127.0.0.1 funciona e outro que também funciona é localhost/phpmyadmin.

[7] Comentário enviado por egarbin em 08/05/2014 - 20:40h

Flávio,

No fim do arquivo .config em questão você encontra essas informações?

"# Include generic snippets of statements
IncludeOptional conf-enabled/*.conf

# Include the virtual host configurations:
IncludeOptional sites-enabled/*.conf"

ou no seu caso aparece ENABLE onde se lê ENABLED?

[8] Comentário enviado por flaguto em 08/05/2014 - 20:47h

Eduardo,

O Meu esta assim. É só incluir as linhas que você indicou.

<VirtualHost *:80>
# The ServerName directive sets the request scheme, hostname and port that
# the server uses to identify itself. This is used when creating
# redirection URLs. In the context of virtual hosts, the ServerName
# specifies what hostname must appear in the request's Host: header to
# match this virtual host. For the default virtual host (this file) this
# value is not decisive as it is used as a last resort host regardless.
# However, you must set it for any further virtual host explicitly.
#ServerName www.example.com

ServerAdmin webmaster@localhost
DocumentRoot /var/www/

# Available loglevels: trace8, ..., trace1, debug, info, notice, warn,
# error, crit, alert, emerg.
# It is also possible to configure the loglevel for particular
# modules, e.g.
#LogLevel info ssl:warn

ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined

# For most configuration files from conf-available/, which are
# enabled or disabled at a global level, it is possible to
# include a line for only one particular virtual host. For example the
# following line enables the CGI configuration for this host only
# after it has been globally disabled with "a2disconf".
#Include conf-available/serve-cgi-bin.conf
</VirtualHost>

# vim: syntax=apache ts=4 sw=4 sts=4 sr noet

[9] Comentário enviado por egarbin em 08/05/2014 - 21:10h

Flávio,

Em um nível acima, na pasta APACHE2 você encontra o arquivo 'apache2.config'

Verifique por favor se consta as linha que citei acima.

[10] Comentário enviado por flaguto em 08/05/2014 - 21:20h

Eduardo,

Tem sim, mas esta em /etc/apache2/apache2.conf

[11] Comentário enviado por egarbin em 08/05/2014 - 21:26h

Exato Flávio,

Se o texto está como colocado anteriormente, talvez a troca do nome da pasta SITES-ENABLE para SITES-ENABLED resolva a situação.

ATENÇÃO: Faça backup de tudo ok?

[12] Comentário enviado por flaguto em 08/05/2014 - 21:32h

Eduardo,

Já esta como SITES-ENABLED e a linha CONF-ENABLED


[13] Comentário enviado por egarbin em 08/05/2014 - 21:33h

Flávio,

Me refiro a PASTA SITES-ENABLE no diretório APACHE2.

[14] Comentário enviado por flaguto em 08/05/2014 - 21:48h

Eduardo,

As pastas já estão ENABLED e o diretorio 000-default.conf

000-default.conf , esta da mesma forma como na pasta www/

[15] Comentário enviado por flaguto em 08/05/2014 - 21:50h

Eduardo,

Erro sem pasta www/

[16] Comentário enviado por egarbin em 08/05/2014 - 21:50h

Vamos com "/etc/init.d/apache2 restart" para reiniciar o servidor e testa-lo

[17] Comentário enviado por flaguto em 08/05/2014 - 21:54h

Já fiz e não funcionou não.

Estou achando que a versão apache2 2.4.9 não é compatível com o ubuntu 14.04 ou o php5 com o apache2.

[18] Comentário enviado por egarbin em 08/05/2014 - 23:01h

Parece que sim Flávio.

Lamento não poder ajudar.

Qualquer novidade, por favor, contribua aqui no fórum.

um abraço.

[19] Comentário enviado por deividsb em 28/05/2014 - 20:44h

Aqui deu certo.

Só um detalhe, o arquivo está na pasta sites-enabled.
usei o comando:

sudo gedit /etc/apache2/sites-enabled/000-default.conf

depois de alterado conforme a dica reinicie o apache:
sudo service apache2 restart

E pronto! Funcionou com essa dica! valeu!

[20] Comentário enviado por joseli_filho em 12/06/2014 - 23:15h

Obrigado amigo, eu estava desesperado para configurar meu PHP e não encontrei em nenhum lugar

Você é o cara

VLW!!

[21] Comentário enviado por heepz em 21/07/2014 - 18:33h

Obrigado. Estava me batendo com isso.

[22] Comentário enviado por MarceloBalb em 23/07/2014 - 09:01h

[RESOLVIDO!!!!]
Depois de vários testes, inclusive estes já postados, consegui solucionar este problema de “Links Permanentes” no WordPress em Localhost no Lubuntu 13.10 onde utilizo Apache2. Simplesmente, localizei as configurações do apache em ” /etc/apache2/apache2.conf” e usando “sudo gedit /etc/apache2/apache2.conf” fiz as seguintes alterações:

De:

Options FollowSymLinks
AllowOverride None
Require all granted

Para:

Options Indexes FollowSymLinks MultiViews
AllowOverride All
Require all granted

Salvei o arquivo e reiniciei o apache com: sudo /etc/init.d/apache2 restart

Espero ter ajudado!

[23] Comentário enviado por bladenero em 21/08/2014 - 12:18h

Muito obrigado, Eduardo!

[24] Comentário enviado por canindeh em 28/09/2014 - 12:02h

Tá quase tudo certo no meu pc. Com relação ao php+apache2+mysql. Porém, sempre que vou abrir algum projeto, dá o erro citado nesse post.

Fui tentar corrigir como o explicado aí e deu isso, e não corrigiu, o que poderia ser?

"(gedit:20899): Gtk-WARNING **: Calling Inhibit failed: GDBus.Error:org.freedesktop.DBus.Error.ServiceUnknown: The name org.gnome.SessionManager was not provided by any .service files"

[25] Comentário enviado por emilioemidio em 08/01/2015 - 10:43h


Bom dia pessoal . estou com um problema e vim parar neste tópico kkkk
já fiz de tudo (eu acho ) e o erro 404 não para alguém poderia me ajudar ?
quando acesso localhost ele esta funcionando, mas quando vou abrir um arquivo.php ele aparece esse erro .
já tirei DocumentRoot /var/www/ já voltei e nada .

[26] Comentário enviado por cvferrari em 27/01/2015 - 17:28h

Cara ótima dica! Agora estou com outro problema. Instalei o OCS inventory no servidor em nuvem. A instalação ocorreu tudo bem, porém consigo apenas acessar a página principal http://IP_EXTERNO_DO_SERVIDOR onde mostra que o apache está funcionando. Após a sua dica, configurei uma página http://IP_EXTERNO_DO_SERVIDOR/info.php que também está funcionando. Porém http://IP_EXTERNO_DO_SERVIDOR/ocsreports/install.php não funciona (erro 404). Você sabe por que?

[27] Comentário enviado por egarbin em 27/01/2015 - 18:45h


Tudo blz cvferrari?
404 é erro de arquivo não encontrado. Estas pastas que adicionou, tem permissão de acesso para elas?
Veja que você não consegue acessar uma subpasta.

[28] Comentário enviado por leandrodmoreira em 18/02/2015 - 21:46h


Muito obrigado Eduardo! Problema resovido na veia!!!

[29] Comentário enviado por jhsiillva em 30/04/2015 - 12:25h

otimo , passo , obrigado me ajudou.

[30] Comentário enviado por Canindeh em 24/05/2015 - 12:04h

Valeu meu amigo!! Muito Obrigado. Você não sabe o quanto me ajudou. Vlw

[31] Comentário enviado por brunodrummer em 25/07/2015 - 21:42h

criei uma conta aqui so para agradecer :D muito grato

[32] Comentário enviado por removido em 21/08/2015 - 03:17h

Ignonar este post!

Foi colocado em lugar errado!

[33] Comentário enviado por joorlando3 em 29/09/2015 - 15:20h

Essa dica me salvou!

Muito obrigado por publicar.

[34] Comentário enviado por egarbin em 03/10/2015 - 09:42h


[31] Comentário enviado por brunodrummer em 25/07/2015 - 21:42h

criei uma conta aqui so para agradecer :D muito grato


Valeu Bruno,
Fico feliz de ter ajudado.
\o/

[35] Comentário enviado por kleytonpires em 22/01/2016 - 00:11h

Dica show...

valeu me salvou aqui!!

[36] Comentário enviado por Warhugo em 19/02/2016 - 11:05h

Muito obrigado, estava quebrando a cabeça aqui. Ajudou muito!!

[37] Comentário enviado por landerson.ro em 02/03/2016 - 00:16h

Meu amigo vou te contar uma coisa viu ... fazia horas que estava a procura de sanar esse detalhe ... BINGO ! Valeu obrigado mesmo. Estou retornando ao inicio com LINUX !

[38] Comentário enviado por jgomes13 em 28/03/2016 - 09:54h

Obrigado pela ajuda, estou testando o funcionamento do ocomon 2.0-RC6 e apresentava justamente este mesmo problema, que com a ajuda deste artigo foi resolvido, porém me deparei com um novo problema, a página do ocomon aparece totalmente em branco. Alguém que passou pelo mesmo problema e possa me ajudar?

[39] Comentário enviado por egarbin em 28/03/2016 - 10:33h


[37] Comentário enviado por landerson.ro em 02/03/2016 - 00:16h

Meu amigo vou te contar uma coisa viu ... fazia horas que estava a procura de sanar esse detalhe ... BINGO ! Valeu obrigado mesmo. Estou retornando ao inicio com LINUX !


Também gastei algumas horas pra achar... hehehe..
fico feliz em ajudar

[40] Comentário enviado por egarbin em 28/03/2016 - 10:37h


[38] Comentário enviado por jgomes13 em 28/03/2016 - 09:54h

Obrigado pela ajuda, estou testando o funcionamento do ocomon 2.0-RC6 e apresentava justamente este mesmo problema, que com a ajuda deste artigo foi resolvido, porém me deparei com um novo problema, a página do ocomon aparece totalmente em branco. Alguém que passou pelo mesmo problema e possa me ajudar?



Olá jgomes13;
Veja que no diretório /var/www/html temos um arquivo index..., logo quando alteramos o caminho padrão, este arquivo não é encontrado no diretório 'www'. Talvez o mesmo fato aconteça com o 'ocomon 2.0-RC6'. Tente colocar um arquivo index seu no diretório de teste o acesso.

Se der certo ou encontrar uma solução compartilhe com a gente.

um abraço

[41] Comentário enviado por wilken em 28/04/2016 - 09:14h

Eduardo brother, pense como vc me ajudou... E eu quebrando a cabeça com os </VirtualHost> :/
Valeu pela dica ;)

[42] Comentário enviado por egarbin em 08/09/2016 - 17:44h

Galera,
Só uma atualização. A partir do Ubuntu 16.04, o endereço de arquivo de configuração muda. Assim, para acessar ele, ao invés de digitar:

sudo gedit /etc/apache2/sites-enable/000-default.conf

você deve digitar:

sudo gedit /etc/apache2/sites-enabled/000-default.conf


A única mudança é o acrescimo da letra 'd' no nome da última pasta. Onde antes se chamava 'sites-enable', agora temos 'sites-enabled'.

Um abraço a todos.

[43] Comentário enviado por ZAIAS em 18/01/2017 - 13:29h

No meu caso nem abri este arquivo do apache2 diz que a conexão esta fechada

[44] Comentário enviado por ZAIAS em 23/01/2017 - 14:15h

Boa Tarde Eduardo já fiz as alterações necessarias inclusive dando acesso ao grupo pelo chwon porem não obtive exito , a versão do meu apache2 é 2.4.7 não sei mesmo o que venha a ser, e o mais engraçado é que o arquivo contendo o phpinfo() esta no mesmo local que as demais e funciona.

[45] Comentário enviado por egarbin em 24/01/2017 - 13:37h


[44] Comentário enviado por ZAIAS em 23/01/2017 - 14:15h

Boa Tarde Eduardo já fiz as alterações necessarias inclusive dando acesso ao grupo pelo chwon porem não obtive exito , a versão do meu apache2 é 2.4.7 não sei mesmo o que venha a ser, e o mais engraçado é que o arquivo contendo o phpinfo() esta no mesmo local que as demais e funciona.


Oi ZAIAS;
Realmente parece permissão de arquivo.
Você executou o CHMOD de forma recursiva? "chmod -R 777" por exemplo?
Pode ter dado acesso a pasta mas não para os arquivos dela.

Espero ter ajudado

[46] Comentário enviado por timarcos em 15/02/2017 - 17:41h

Meu amigo, passei uma tarde toda instalei 2 vezes, fiz um monte de asneira, trocando permissões de diretório, até ver o seu post que me salvou....kkkkkk valeu a força ajudou muito!!!!!
Realmente um detalhe que passa totalmente dispercebido ;)



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts