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

24 comentários sobre “Colocando o Apache para funcionar no Mac OS X 10.10 (Yosemite)”

  1. 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?

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

    Abs.

  3. 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!

  4. 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).

  5. 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

  6. 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.

  7. 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.

  8. 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.

  9. 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!

  10. 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’?

  11. 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.

  12. 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

  13. 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:

  14. 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 “/

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

    Renomeie o arquivo envvars adicionando o underline: _envvars

    Pronto agora o MAMP está funcionando

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

  17. 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.

Os comentários estão fechados.