Back to site
Since 2004, our University project has become the Internet's most widespread web hosting directory. Here we like to talk a lot about web development, networking and server security. It is, after all, our expertise. To make things better we've launched this science section with the free access to educational resources and important scientific material translated to different languages.

Akrabat - Podešavanje PHP i MySQL na OS X 10.8

Podešavanje PHP i MySQL na OS X 10.8 Mountain Lion

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

  1. 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.
  2. 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)

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

  4. Sada osigurajte da se mysql.sock datoteka može naći sa PHP-om:
    1. Proverite da li MySQL radi
    2. sudo mkdir /var/mysql
    3. 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.

  1. cd /etc/apache2
  2. Dajte dozvolu napisati konfiguracioni fajl do root: sudo chmod u+w httpd.conf
  3. sudo vim httpd.conf (ili koristite BBEdit/TextWrangler za uređivanje httpd.conf)
  4. Nađite #LoadModule php5_module libexec/apache2/libphp5.so i uklonite vodeći #
  5. Pronađite AllowOverride None unutar <Directory "/Library/WebServer/Documents">sekcije i promenite uAllowOverride All tako da će .htaccess datoteka raditi.
  6. Promenite dozvole nazad: sudo chmod u-w httpd.conf
  7. Restartujte Apache: sudo apachectl restart
  8. Otvorite Finder i idite /Library/WebServer/Documents/ uz pomoć shift+cmd+g
  9. 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.
  10. Kreirajte novu datoteku pod nazivom info.php with <?php phpinfo(); unutar njega
  11. 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)
  12. Osigurajte da će Apache startovati posle restarta:
    sudo launchctl load -w /System/Library/LaunchDaemons/org.apache.httpd.plist

php.ini

  1. cd /etc
  2. sudo cp php.ini.default php.ini
  3. sudo chmod ug+w php.ini
  4. sudo chgrp staff php.ini
  5. 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.

  1. vim /etc/php.ini
  2. 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
  3. 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...)

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

  1. cd /usr/lib/php
  2. sudo php install-pear-nozlib.phar
  3. Edit/etc/php.ini and find the line: ;include_path = ".:/php/includes" and change it to:
    include_path = ".:/usr/lib/php/pear"
  4. sudo pear channel-update pear.php.net
  5. sudo pecl channel-update pecl.php.net
  6. sudo pear upgrade-all

PHPUnit i prijatelji

Pretpostavljam da svima treba ovo...

  1. sudo pear config-set auto_discover 1
  2. sudo pear install phpunit/PHPUnit
  3. sudo pear install phpunit/phpcpd
  4. sudo pear install PHP_CodeSniffer

PECL OAuth

Nekoliko projekata na kojima radim koristi PECL OAuth komponentu:

  1. Proverite da li imate instaliran Xcode sa Mac App Store
  2. Preuzmite najnoviji izvorni kod PCRE sa http://sourceforge.net/projects/pcre/files/pcre/ i unzip-te u folder na desktopu
  3. cd ~/Desktop/pcre-8.12
  4. ./configure
  5. sudo cp pcre.h /usr/include/
  6. Uklonite pcre folder sa desktopa, pošto vam više ne treba
  7. sudo pecl install oauth
  8. Edit/etc/php.ini dodajte ove linije na kraj fajla:
    [oauth]
    extension="/usr/lib/php/extensions/no-debug-non-zts-20090626/oauth.so"
  9. 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:

  1. Preuzmite libmcrypt-2.5.8 sa sourceforge
  2. Preuzmite ispravni PHP izvorni kod odavde. U vreme pisanja potrebna vam je verzija 5.3.13.
  3. Instalirajte Xcode sa Mac App Store, a zatim instalirajte alate komandne linije u okviru Xcode-a
  4. Instalirajte autoconf pomoću homebrew.
  5. Ekstraktujte libmcrypt i PHP izvorni kod u ~/Desktop/src.
  6. Kompajlirajte i instalirajte libmcrypt Ukucajte ovaj tekst u Terminal:
    1. cd ~/Desktop/src/libmcrypt-2.5.8
    2. 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
    3. make -j6
    4. sudo make install
  7. Kompajlirajte i instalirajte crypt PHP ekstenziju. Ukucajte ovaj tekst u Terminal:
    1. cd ~/Desktop/src/php-5.3.13/ext/mcrypt
    2. phpize
    3. 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
    4. make -j6
    5. sudo make install
    6. Add extension=mcrypt.so to the end of /etc/php.ini using your favourite text editor
    7. Restart Apache using sudo apachectl restart
    8. 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:

Published (Last edited): 22-05-2013 , source: http://akrabat.com/computing/setting-up-php-mysql-on-os-x-10-8-mountain-lion/