Sa OS X 10.8, Apple nastavlja da isporučuje PHP 5.3 sa Xdebug, PEAR, GD i PDO_MYSQL. Evo kako da ga podesite sa čistog instaliranja 10.8.
/usr/local
Proverite da li postoje sledeći direktorijumi:
sudo mkdir /usr/local/include sudo mkdir /usr/local/bin sudo mkdir /usr/local/lib sudo mkdir -p /usr/local/man/man1
MySQL
- Skinite "k86", 64-bitnu verziju DMG u MySQL 5.5.x za OS X 10.6 sa mysql.com i instalirajte pkg, startup stavku i preferirano okno.
- Add /usr/local/mysql/bin to the path: vim ~/.bash_profile and add:
export PATH=~/bin:/usr/local/bin:/usr/local/mysql/bin:$PATH export EDITOR=vim
na vrhu datoteke(! Imajte u vidu da smo postavili EDITOR dok smo ovde, tako da svn bude srećan)
- Podesite MySQL root lozinku:
mysqladmin -u root password {new-password} mysqladmin -u root -p{new-password} -h localhost password {new-password} mysqladmin -u root -p{new-password} reload
Očistite istoriju fajla kucanjem history -c tako da {nova lozinku} nije u prostom tekstu na disku.
- Sada osigurajte da se mysql.sock datoteka može naći sa PHP-om:
- Proverite da li MySQL radi
- sudo mkdir /var/mysql
- sudo ln -s /tmp/mysql.sock /var/mysql/mysql.sock
Apache
Apple je uklonio "Web Sharing" opciju iz System Preferences, ali Apache je još uvek instaliran. Samo treba da koristite komandnu liniju da ga pokrenete i zaustavite.
- cd /etc/apache2
- Dajte dozvolu napisati konfiguracioni fajl do root: sudo chmod u+w httpd.conf
- sudo vim httpd.conf (ili koristite BBEdit/TextWrangler za uređivanje httpd.conf)
- Nađite #LoadModule php5_module libexec/apache2/libphp5.so i uklonite vodeći #
- Pronađite AllowOverride None unutar <Directory "/Library/WebServer/Documents">sekcije i promenite uAllowOverride All tako da će .htaccess datoteka raditi.
- Promenite dozvole nazad: sudo chmod u-w httpd.conf
- Restartujte Apache: sudo apachectl restart
- Otvorite Finder i idite /Library/WebServer/Documents/ uz pomoć shift+cmd+g
- Napravite novi folder pod nazivom "orig" i stavite sve fajlove koji se trenutno nalaze u Documents u njega. (Imajte na umu da će tražiti vašu lozinku pošto Documents može da se piše samo preko root-a.
- Kreirajte novu datoteku pod nazivom info.php with <?php phpinfo(); unutar njega
- Koristite Safari da biste došli do http://localhost/info.php i proverite da li je PHP verzija prikazana (5.3.13 u vreme pisanja ovog teksta)
- Osigurajte da će Apache startovati posle restarta:
sudo launchctl load -w /System/Library/LaunchDaemons/org.apache.httpd.plist
php.ini
- cd /etc
- sudo cp php.ini.default php.ini
- sudo chmod ug+w php.ini
- sudo chgrp staff php.ini
- sudo vim php.ini (ili uredite sa BBEdit/TextWrangler) i promenite podešavanja na odgovarajući način.
U minimumu bi trebalo da promenite:error_reporting = E_ALL | E_STRICT display_errors = On html_errors = On extension_dir = "/usr/lib/php/extensions/no-debug-non-zts-20090626"
((! volim da vidim svoje greške Xdebug u svetlo narandžastoj)
Takođe, promenite sve instance /var/mysql/mysql.sock u /tmp/mysql.sock
Xdebug
Ne možete imati PHP okruženje za razvoj bez xdebug! Apple izgleda da se slaže pošto Mountain Lion dolazi sa njim.
- vim /etc/php.ini
- Pronađite liniju:
;zend_extension="/usr/lib/php/extensions/no-debug-non-zts-20090626/xdebug.so"
I uklonite tačke i zareze na početku - Ukoliko želite da konfigurišete podešavanja Xdebug, skrolujte do kraja fajla i potražite [xdebug] deo. Meni se sviđaju ove postavke:
xdebug.var_display_max_children = 999 xdebug.var_display_max_data = 99999 xdebug.var_display_max_depth = 100
(koristite sa oprezom...)
- Restartujte Apache: sudo apachectl restart restart i proverite u phpinfo da xdebug je sada učitan.
PEAR
Potreban nam je PEAR! Iz nekog razloga, nije podešen da bude spreman za Lion, ali fajl za instalaciju je tu, tako da samo treba da ga pokrenete.
- cd /usr/lib/php
- sudo php install-pear-nozlib.phar
- Edit/etc/php.ini and find the line: ;include_path = ".:/php/includes" and change it to:
include_path = ".:/usr/lib/php/pear" - sudo pear channel-update pear.php.net
- sudo pecl channel-update pecl.php.net
- sudo pear upgrade-all
PHPUnit i prijatelji
Pretpostavljam da svima treba ovo...
- sudo pear config-set auto_discover 1
- sudo pear install phpunit/PHPUnit
- sudo pear install phpunit/phpcpd
- sudo pear install PHP_CodeSniffer
PECL OAuth
Nekoliko projekata na kojima radim koristi PECL OAuth komponentu:
- Proverite da li imate instaliran Xcode sa Mac App Store
- Preuzmite najnoviji izvorni kod PCRE sa http://sourceforge.net/projects/pcre/files/pcre/ i unzip-te u folder na desktopu
- cd ~/Desktop/pcre-8.12
- ./configure
- sudo cp pcre.h /usr/include/
- Uklonite pcre folder sa desktopa, pošto vam više ne treba
- sudo pecl install oauth
- Edit/etc/php.ini dodajte ove linije na kraj fajla:
[oauth] extension="/usr/lib/php/extensions/no-debug-non-zts-20090626/oauth.so"
- Restartujte Apache: sudo apachectl restart restartujte i proverite u phpinfo da je OAuth sada dozvoljen
mcrypt
Ovo je korisno Pratite detalje iz Plugging mcrypt into PHP, on Mac OS X Lion 10.7
od Michale Gracie. Pročitajte komentare za 10.8 potrebne izmene.
Ukratko:
- Preuzmite libmcrypt-2.5.8 sa sourceforge
- Preuzmite ispravni PHP izvorni kod odavde. U vreme pisanja potrebna vam je verzija 5.3.13.
- Instalirajte Xcode sa Mac App Store, a zatim instalirajte alate komandne linije u okviru Xcode-a
- Instalirajte autoconf pomoću homebrew.
- Ekstraktujte libmcrypt i PHP izvorni kod u ~/Desktop/src.
- Kompajlirajte i instalirajte libmcrypt Ukucajte ovaj tekst u Terminal:
- cd ~/Desktop/src/libmcrypt-2.5.8
- MACOSX_DEPLOYMENT_TARGET=10.8 CFLAGS='-O3 -fno-common -arch i386 -arch x86_64' LDFLAGS='-O3 -arch i386 -arch x86_64' CXXFLAGS='-O3 -fno-common -arch i386 -arch x86_64' ./configure --disable-dependency-tracking
- make -j6
- sudo make install
- Kompajlirajte i instalirajte crypt PHP ekstenziju. Ukucajte ovaj tekst u Terminal:
- cd ~/Desktop/src/php-5.3.13/ext/mcrypt
- phpize
- MACOSX_DEPLOYMENT_TARGET=10.8 CFLAGS=’-O3 -fno-common -arch i386 -arch x86_64′ LDFLAGS=’-O3 -arch i386 -arch x86_64′ CXXFLAGS=’-O3 -fno-common -arch i386 -arch x86_64′ ./configure --with-php-config=/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.8.sdk/usr/bin/php-config
- make -j6
- sudo make install
- Add extension=mcrypt.so to the end of /etc/php.ini using your favourite text editor
- Restart Apache using sudo apachectl restart
- Open up the info.php file and check that crypt is installed
To sve radi na ovoj mašini, u svakom slučaju :)
Ostale opcije
Ako radije koristite pakovanu verziju, onda su ovo dve alternative: