Colocando o Apache para funcionar no Mac OS X 10.10 (Yosemite)

Não vou tecer aqui as minhas reclamações a respeito do novo sistema do Mac. Não estou me entendendo muito bem com ele, espero que seja questão de tempo.

Uma coisa que mudou e me deu trabalho foi o Apache. No Mavericks, o Apache era o 2.2. No Yosemite, eles agora usam o 2.4. Se você usava o Apache no Mavericks, vai ver que ele logo de cara não funciona no Yosemite.

Vamos aos passos que resolveram o meu problema. Talvez resolvam o seu também. Estou supondo que você use o Apache com o PHP na pasta /Library/WebServer/Documents/.

Edite o arquivo /etc/apache2/httpd.conf (você vai reparar que ele salvou uma cópia do seu httpd.conf como httpd.conf.pre-update. Suas configurações antigas estão lá).

sudo vi httpd.conf

Comente a linha “Require all denied” do diretório “/”.

AllowOverride none
# Require all denied

Descomente a linha que carrega o PHP.

LoadModule php5_module libexec/apache2/libphp5.so

Caso você não esteja usando o apache na pasta /Library/WebServer/Documents/, talvez seja útil adicionar o usuário _www aos grupos admin, staff e wheel, usando os comandos abaixo no terminal.

sudo dseditgroup -o edit -a _www -t user admin
sudo dseditgroup -o edit -a _www -t user wheel
sudo dseditgroup -o edit -a _www -t user staff

Pronto. Reinicie o apache que tudo deve funcionar agora.

sudo apachectl restart

Comments on this entry are closed.

  • Jorge

    Cara nem me fale… to todo cagado com essa atualização da apple…
    mas no meu caso nada esta rodando…
    eu uso o MAMP, e nele não esta subindo nem o apache nem o mysql
    tem alguma ideia do que posso fazer?

  • Eu parei de usar o MAMP no Mavericks. Ele ficou muito pesado e dava uns problemas comigo.

    Experimenta se libertar de vez do MAMP e usar o Apache que já vem com o Mac OS X.

    Esse artigo aqui dá todos os passos para usar o Apache, MySQL e PHP no Mac, sem precisar do MAMP.

    http://coolestguidesontheplanet.com/get-apache-mysql-php-phpmyadmin-working-osx-10-10-yosemite/

  • rafael

    Cara, ja tentei de tudo e não volta a funcionar. Tem algo a mais pra fazer fora o que colocou aqui?

    Abs.

  • Fiz exatamente isso que coloquei no post.

    Já deu uma olhada no seu log de erro do apache para ver o que aparece lá?

  • Zé,

    Vou seguir seu conselho e deixar de usar o MAMP.
    Tá tudo ok, já está aparecendp “It works!” no meu localhost.

    Agora preciso apontar o localhost para minha pasta “www”, não estou conseguindo. É muito complicado?

    Valeu!

  • A pasta do localhost é /Library/WebServer/Documents

    Pelo Finder você chega lá com o Shift+Command+G e depois digita o caminho que eu deixei acima (não esqueça da primeira barra).

  • Até aí tranquilo!

    Eu quero alterar essa pasta para a minha pasta “www”.
    Sabe informar como devo proceder?

  • Sei sim.

    Abre o terminal e digita o seguinte:
    sudo nano /etc/apache2/httpd.conf

    Depois procure pela linha que diz:
    DocumentRoot “/Library/WebServer/Documents”

    Troque /Library/WebServer/Documents pelo seu diretório usando o caminho completo dele.

    Logo abaixo você vai encontrar o seguinte:
    <Directory “/Library/WebServer/Documents”>
    Troque /Library/WebServer/Documents pelo seu diretório usando o caminho completo dele.

    Depois salve o arquivo, feche o nano (com Ctrl+x) e reinicie o apache com o seguinte comando:

    sudo apachectl restart

  • Alterei o caminho para o meu diretório:

    “/Users/Cazper/_Studio/Www” testei também com “/Cazper/_Studio/Www”. No navegador, quando entro com “http://localhost/~Cazper/” não carrega minha lista de pastas e se acesso “http://localhost” cai na página default do Apache “Its Works”.

    O que será que estou deixando passar?

    Valeu pelo help.

  • José Antonio

    Deve ter esquecido de reiniciar o apache.

    sudo apachectl restart

  • Eu já tinha reiniciado, mas para garantir reiniciei novamente.

    Quando acesso “http://localhost/~Cazper/” aparece:

    Not Found
    The requested URL /~Cazper was not found on this server.

  • José Antonio

    Sinceramente não sei o que pode estar acontecendo. Eu uso a pasta padrão do sistema. Talvez a pasta Users não seja visível pelo Apache ou não tenha permissão de execução. Não sei mesmo.

    Por que não usa a pasta padrão do sistema? (/Library/WebServer/Documents)

    Se o problema é conseguir criar e editar arquivos nela, basta entrar no terminal e digitar:
    sudo chown -R Cazper /Library/WebServer/Documents/
    (Para os outros leitores, troque Cazper pelo nome do seu usuário)

    Depois, se quiser ter um atalho no Finder, entra no /Library e arrasta a pasta WebServer para a barra lateral esquerda.

  • Vou acabar usando a basta “documents” mesmo.

    Veja se pode me ajudar com uma nova situação, tenho a pasta “nomedaempresa” dentro dessa pasta eu tenho as pastas “projeto1”, “projeto2”, etc.

    Quando clico na pasra “nomedaempresa” ela não carrega as pastas.
    Sabe me dizer como faço pra liberar?

    Mais uma vez, muito obrigado!

  • José Antonio

    Se tiver arquivos index.php ou index.html dentro da pasta ‘nomedaempresa’, você não vai conseguir ver as outras pastas.

    Você consegue ver a pasta ‘nomedaempresa’?

  • Dentro da pasta “nome da empresa” só tem outras pastas “projeto1″, “projeto2″, etc… dentro dessas pastas tem arquivos index.php/index.html.

    A pasta “nomedaempresa” eu consigo ver, só não vejo as pastas que estão dentro.

  • José Antonio Oliveira

    Isso é o comportamento padrão do apache. Quando tem um arquivo index.html ou index.php, ele não mostra as pastas.

    Não tenho certeza, mas acho que tem que colocar algo como
    Option +Indexes
    dentro do diretório / no http.conf

  • Consegui fazer o MAMP 2.2 funcionar, depois de muita pesquisa achei um vídeo que soluciona tudo de uma forma bem simples.

    Pra quem quiser assistir o vídeo, segue o link:
    https://www.youtube.com/watch?v=brpKAM2WXhk

  • eduardo

    boa noite
    seguinte eu também tentei isso tudo ai mas não deu certo no meu yosemite será que você sabe mais alguma forma fora estas?
    nem meu professor que usa mac conseguiu dar jeito “/

  • Para os amigos que não conseguiram ainda, segue o procedimento que deu certo comigo: via Finder, basta seguir o caminho Applications > MAMP > bin > apache2 > bin e renomear o arquivo “envvars” para “_envvars”.

    Fonte: http://stackoverflow.com/a/25212463

  • Rodrigo

    Fácil. Vá em Finder/Aplicativos/MAMP/bin/apache2/bin

    Renomeie o arquivo envvars adicionando o underline: _envvars

    Pronto agora o MAMP está funcionando

  • Lucyanna

    Também atualizei para o yosemite, e agora o modem nextel não funciona mais… o que posso fazer?? Alguma ideia?

  • A solução de renomear o “envvars” é a que postei no vídeo.

    Para o pessoal que renomeou o arquivo para “_envvars” teve algum problema de cache? Estou com um lag no cache, bem chato pra trabalhar e não é do navegador.

  • Muito legal!

  • Alexandre Bocuto

    Olá. Estou com o Apache funcionando no Yosemite e apontando para minha pasta www. Estou tentando acessar o localhost via Ipad e não consigo. Já tentei com http://localhost/˜user; http://endereçoIP; http://127.0.0.1 e até http://nomedoMac.local. Nada carrega no ipad.
    Quando uso http://localhost/˜user e http://endereçoIP me retorna o erro err_connection_time_out.

    Alguma luz no fim do túnel?

    Obrigado.