wrz 19 2009
Apache PHP MySQL na Mac OS X
Z racji nadmiaru pracy i niedomiaru czasu który mogę spędzić w biurze, pojawiła się potrzeba odpalenia zestawu opisanego w tytule postu. Wcześniej korzystałem z MAMPa, ale tym razem postanowiłem wykorzystać dobrodziejstwa Snow Leoparda. Okazuje się, że Apache jest standardowo zainstalowany w systemie – trzeba go jedynie lekko skonfigurować żeby pracował tak jak chcemy. Do dzieła…
Apache
Linia poleceń zawsze była szybsza niż klikanie, więc przejdziemy od razu do rzeczy:
sudo apachectl start
sudo apachectl stop
sudo apachectl restart
Polecenia, które uruchamiają, zatrzymują lub restartują Apacha – widoczny pod domeną http://localhost w naszej przeglądarce. Niestety domyślnie DocumentRoot wskazuje na /Library/WebServer/Documents, co nijak nie pasuje do naszej koncepcji wygodnego posługiwania się Apachem. Edytujemy więc konfiguracje Apacha:
sudo nano /etc/apache2/httpd.conf
Szukamy linii:
# Virtual hosts
Include /private/etc/apache2/extra/httpd-vhosts.conf
zdejmujemy komentarz z drugiej linii i edytujemy sudo nano /private/etc/apache2/extra/httpd-vhosts.conf
Interesuje nas fragment:
<VirtualHost *:80>
ServerAdmin nasz@adres.email.pl
DocumentRoot "/Users/slav/Sites"
ServerName test.localhost
ServerAlias www.test.localhost
ErrorLog "/private/var/log/apache2/dummy-host.example.com-error_log"
CustomLog "/private/var/log/apache2/dummy-host.example.com-access_log" common
</VirtualHost>
gdzie zamiast slav wstawiacie nazwę użytkownika pod którym pracujecie, dzięki temu pod nazwą test.localhost będziemy widzieć zawartość katalogu „Witryny” w polskiej wersji systemu.
Jeszcze trzeba tylko dopisać odpowiednią linijkę do nano /etc/hosts tak aby system rozpoznawał test.localhost
127.0.0.1 localhost test.localhost
Teraz wystarczy tylko zrobić restart sudo apachectl restart Apacha i… powinno działać. Ok. Mamy działającego Apacha, teraz czas na…
PHP
Edytujemy ponownie konfigurację Apacha
sudo nano /etc/apache2/httpd.conf
Dodajemy dwie linijki:
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps
najlepiej w odpowiednim miejscu, żeby nie było bałaganu w konfigu ![]()
Druga linijka, która nas interesuje to
LoadModule php5_module libexec/apache2/libphp5.so
wystarczy ją odkomentować.
tradycyjnie restart: sudo apachectl restart i sprawdzamy czy działa PHP…

jak widać SOA#1.
Do pełni szczęścia brakuje nam jedynie
MySQL
Niestety Snow Leopard nie został wyposażony w MySQLa musimy go więc pobrać ze strony MySQL. Ważne jest żeby pobrać sobie paczkę .dmg która zawiera plik .pkg z instalatorem. Oszczędzi nam to zabawy. Istotne jest również to, żeby zainstalować sobie Panel Ustawień.

Po instalacji wchodzimy do „Preferencje systemowe” i pojawia nam się ładne okienko:

Na sam koniec warto zwrócić uwagę, że phpMyAdmin nie połaczy się z naszą bazą danych jeżeli user będzie miał „puste” hasło… także koniecznie trzeba dodać usera z hasłem.
Pisząc ten artykuł korzystałem z informacji zawartych na stronie Building Apache, MySQL, and PHP warto też przeczytać Installing Apache, PHP and MySQL.




lis 20, 2009 @ 09:36:18
O co chodzi z tym użytkownikiem ??, zrobiłem wszystko jak opisywałeś, i php mi działa, rozpakowałem phpmyadmin i niestety, próbowałem stworzyć hasło roota ale wywala mi błąd, pisałem to tak mysql -u root -p
i wykładał mi się błędem, wiec wywołałem go z mysqladmin i mimo że wpisałem hasło to go nadal nie mam, w phpmyadmin w pliku konfiguracyjnym wpisałem hasło ale nadal nie mogę się połaczyć, czy można to opisać bardziej szczegółówow ??, czyli jak zakładamy nowego użytkownika by można było się połączyć z mysql..
Dziękuję serdecznie.
lis 20, 2009 @ 11:10:29
mialo być
inaczej nie uruchamiasz mysqla z prawami roota i hasla nie zmienisz. Na przyszlosc jak sie „wywala blad” to wklej mi go. Inaczej nie wiem co to za blad i ciezko powiedziec.
lis 20, 2009 @ 15:46:42
próbowałem z sudo, tym razem po admin przeszło, stworzyłem bazę danych i tabele w sql, i próbuję się połączyć z php i mam taki komunikat
Warning: mysql_connect() [function.mysql-connect]: Can’t connect to local MySQL server through socket ‘/var/mysql/mysql.sock’ (2) in /Users/scorpion/Sites/index.php on line 2
z tym że dziwna sprawa bo mysql mam w katalogu /usr/local i
mam 2 katalogi jeden to mysql
a drugi to mysql-5.0.87-osx10.5-x86
ten 2 to jest ten co instalowałem, wiec czemu się odwołuję do lokalizacji mysql, robiłem wszystko według wskazówek, spróbuje jeszcze raz odpoczątku, mam tylko jedno pytanie, czy jak wywala katalogi mysql i ten mysql-z wersja to czy muszę gdzie indziej jeszcze usówać jakieś informacje o nim czy to wystarczy ??
lis 20, 2009 @ 15:52:17
dwie sprawy
1. czy mysql dziala ? sprawdz preferencje systemowe, tam na dole jest zakladka i zobacz czy chodzi
2. jak sie laczysz z mysql, to sprobuj przez 127.0.0.1 a nie przez localhost…
a trzecia… nie pisz do mnie z bledami bo nie bede odpowiadal
lis 20, 2009 @ 16:05:41
Dziękuję, pomogło, jak można przestawić by ,również działało na localhost.
Jeszcze raz dziękuję za pomoc.
paź 01, 2011 @ 19:02:00
Takiego dokładnego wytłumaczenia szukałem – wielkie dzięki.
paź 01, 2011 @ 19:05:00
Jeżeli dobrze rozumuje to w miejscu test.localhost wpisujesz localhost i już. Ale mogę się mylić
paź 02, 2011 @ 12:16:00
Moje rozumowanie mnie zawiodło
Trzeba to inaczej zrobić.