Konfiguracja Apache, PHP 5.6 i Mysql lokalnie na MAC OS

Obrazek Macbook PRO

W tym wpisie napiszę jak zainstalować krok po kroku serwer Apache, mysql i interpreter PHP w starej wersji 5.6 na MAC OS High Sierra (najnowszy na chwilę pisania tego wpisu). Dodatkowo zainstalujemy Node JS oraz Composer i narzędzie do Node jakim jest Gulp. Zanim cokolwiek zaczniemy robić, najpierw zaktualizujemy system do najnowszej wersji.

Teraz możemy przystąpić do wykonywania swojego zadania czyli czeka nas Konfiguracja Apache, PHP 5.6 i Mysql lokalnie na MAC OS

Ustawiamy kolorowanie składni w terminalu (pomocne przy dalszej konfiguracji)

Tworzymy plik “.bash_profile” w katalogu /Users/NAZWA_UZYTKOWNIKA (gdzie NAZWA_UZYTKOWNIKA to nasz profil) i wklejamy do niego poniższą zawartość:

alias strefa-proj='cd /Users/NAZWA_UZYTKOWNIKA/Sites/htdocs/'

# I like tunning the colors of the prompt in the first place:
export CLICOLOR='true'
export  LSCOLORS="gxfxcxdxbxCgCdabagacad"
export EDITOR=vi

# Git branch in good-looking prompt.
parse_git_branch() {
   git branch 2> /dev/null | sed -e '/^[^*]/d' -e 's/* \(.*\)/ (\1)/'
}

# Prompt with Git branch
# Explanation of the weird lines: \u Username, \h Host, \w Path, tput setaf is the color definition

export PS1='\[$(tput setaf 7)\]\u@\[$(tput setaf 2)\]\h:\[$(tput setaf 4)\]\w\[$(tput setaf 1)\]$(parse_git_branch)\[$(tput sgr0)\] $ '

# Bonus track: SSH autocompleting hostnames, write ssh and press tab
complete -W "$(while read line; do echo ${line%%[, ]*}; done < ~/.ssh/known_hosts)" ssh

# Git autocompletion
# Requires that you execute the following commented line:
# curl https://raw.githubusercontent.com/git/git/master/contrib/completion/git-completion.bash -o ~/.git-completion.bash

Zapisujemy. Zamykamy terminal i włączamy go ponownie. Od teraz kolorowanie składni wygląda poprawnie. Możliwe, że po włączeniu terminala teraz system zapyta nas o zainstalowanie XCODE (chodzi o to, aby GIT był rozpoznawalny poprawnie). Klikamy INSTALUJ.

Zainstalowanie HOMEBREW

Potrzebny jest instalator pakietów. Wpisujemy w terminalu z poziomu obojętnie jakiego katalogu komendę:

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

Po wklejeniu polecenia do terminala wyskakuje komunikat PRESS RETURN OR ANY BUTTON klikamy koniecznie klawisz ENTER na klawiaturze i czekamy. Gotowe. Lecimy dalej.

Instalacja PHP w wersji 5.6 – UWAGA! Ta wersja nie jest już wspierana, ale pomagam przy instalacji właśnie tej starej. Nową wystarczy zainstalować wpisując brew install php72, pomijając dalsze kroki tego punktu.

Najpierw wchodzimy na stronę:

https://github.com/Homebrew/homebrew-php/tree/966f6c318be2d80b4953cd8cdc112b9611eff8d9

Pobieramy to co tam jest jako plik ZIP i odpakowujemy. Zmieniamy nazwę na “homebrew-php” i kopiujemy do katalogu, lub przenosimy do

/usr/local/Homebrew/Library/Taps/homebrew/

Teraz otwieramy terminal i wpisujemy komendę:

brew search php56-redis

Teraz Homebrew powinien odnaleźć nasze repozytorium plików dodane po ściągnięciu. Możemy instalować PHP 5.6 wraz z apache.

Używamy komendy:

brew install php56 --with-httpd --build-from-source

Trzeba poczekać dłuższą chwile, MAC zacznie głośniej chodzić, bo php i apache budowane są po pobraniu.

Instalacja NODE.JS

Wpisujemy komendę

brew install npm

Od razu jak to zainstalujemy wpiszemy komendę:

npm install gulp -g

Zainstalowaliśmy npm i gulp.

Konfiguracja interpretera PHP

Szukamy pliku httpd.conf. Standardowo znajduje się on w katalogu /etc/apache2/

Szukamy w tym pliku “DirectoryIndex index.html”. Powinno nam znaleźć. Tam tworzymy taki układ:

<IfModule dir_module>
    DirectoryIndex index.php index.html
</IfModule>
<FilesMatch .php$>
    SetHandler application/x-httpd-php
</FilesMatch>

Następnie szukamy w tym samym pliku linijki “LoadModule php” Tam prawdopodobnie będziesz mieć libphp7.so zakomentowane. Tak zostaw. Pod tą linijką zrób enter i wpisz:

LoadModule php5_module /usr/local/opt/php56/libexec/apache2/libphp5.so

Odnajdujemy linijke “LoadModule rewrite_module” i odkomentujemy ją, tak aby działały pliki .htaccess. Zapisujemy plik httpd potwierdzając hasło do swojego konta.

Konfiguracja samego apache, żeby poprawnie kierowało nasze domeny

Otwieramy plik /etc/hosts i dodajemy:

127.0.0.1 local-projekty.pl

Hosty prawidłowo przekierowane. Teraz ustawiamy virtualhosty do apache, żeby domene nakierować na odpowiedni katalog. do pliku httpd.conf wklejamy poniższe dyrektywy

<VirtualHost *:80>
    ServerName local-projekty.pl
    DocumentRoot "/Users/NAZWA_UZYTKOWNIKA/Sites/htdocs/projekty"
    <Directory "/Users/NAZWA_UZYTKOWNIKA/Sites/htdocs/projekty">
       Options Indexes FollowSymLinks Includes ExecCGI
       AllowOverride All
       Require all granted
    </Directory>
</VirtualHost>

 Alias /phpmyadmin /usr/local/share/phpmyadmin
 <Directory /usr/local/share/phpmyadmin/>
    Options Indexes FollowSymLinks MultiViews
    AllowOverride All
    <IfModule mod_authz_core.c>
     Require all granted
    </IfModule>
    <IfModule !mod_authz_core.c>
     Order allow,deny
     Allow from all
    </IfModule>
 </Directory>

 

Zapisujemy plik. Włączamy terminal i wpisujemy:

sudo /usr/sbin/apachectl start
sudo /usr/sbin/httpd -k start

 

Instalujemy mysql server

Wpisujemy komendę:

brew install mysql@5.6

Dopisujemy sobie symlinki aby móc używać komend mysql.server start lub mysql -u root

do mysql.server

ln -s /usr/local/Cellar/mysql@5.6/5.6.40/support-files/mysql.server /usr/local/bin/mysql.server

do mysql -u root

ln -s /usr/local/Cellar/mysql@5.6/5.6.40/bin/mysql /usr/local/bin/mysql

 

Instalujemy Composer do PHP

Wpisujemy komendę z poziomu /Users/NAZWA_UZYTKOWNIKA/Downloads

curl -sS https://getcomposer.org/installer | php

następnie:

sudo mv composer.phar /usr/local/bin
ln -s /usr/local/bin/composer.phar /usr/local/bin/composer

i teraz zadziała composer install

 

Gotowe. Teraz możemy uruchamiać swoje strony lokalnie. Tworzyć projekty i odnosząc się do domeny, którą wymyśliłem local-projekty.pl dorzucać kolejne repozytoria, apropo, polecam mój poprzedni artykuł o pracy z repozytorium bitbucket. https://dgdev.pl/blog/git/praca-z-repozytorium-bitbucket/

Polecam również w pliku HTTPD.conf zmienić User oraz Group na nazwę swojego użytkownika i grupę staff zamiast _www. Ponieważ pomoże to we wszelakich błędach z uprawnieniami do plików.

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *