21. September 2017 19:34

LAMP++ mit snow leopard

von robert 8. Sep 2009 23:42 (vor 2935 Tagen) ~ comments (2)

snow leopard (mac os x 10.6) ist zwar mit seinem 64bit dingelskern dann doch nicht so der (freudig) erwartete geschwindigkeitsrausch. was aber gut ist: apple hat die skriptsprachen aktualisiert. das bedeutet neben neuesten version von python, ruby und perl gibt es auch php 5.3. und diesmal sogar mit den wichtigsten libs. ich habe bisher noch keine extension vermisst. deshalb habe ich das auch noch nicht kompiliert. trotzdem muss man noch ein bisschen rumfummeln, bis man eine gutausgerüstete entwicklermaschine bekommt.

LAMP == linux, apache, mysql, php

linux

ok, war nur spaß. wie lassen natürlich das os x system drauf…

apache

apache2 ist schon installiert und kann über das kontrollfeld systemeinstellungen/ freigaben/ webfreigabe aktiviert werden. testen kann man das dann, indem man http://localhost in die browser adresszeile eingibt.

msql

mysql fehlt. die erste lücke ist gefunden. mittlerweile gibt es dafür aber ein vorkompiliertes paket.

http://dev.mysql.com/downloads/mysql/5.1.html#macosx-dmg

das 10.5 intel image funktioniert bei mir wunderbar. man kann sich ein kontrollfeld installieren (empfehlenswert), mit dem man die DB hoch und runterfahren kann.

einen hübschen cocoa client gibt es hier: sequel pro

php aktivieren

php ist von hause aus nicht aktiviert. d.h. hier muss man an die konfigdatei ran: in /etc/apache2/httpd.conf die zeile

LoadModule php5_module        libexec/apache2/libphp5.so

auskommentieren. oft braucht man auch virtuelle hosts. dann sollte man gleich noch die zeile

Include /private/etc/apache2/extra/httpd-vhosts.conf

auskommentieren. in der extra/httpd-vhost.conf sollte dann auch schon was sinnvolles stehen. bei mir steht da:

<Directory /Users/rw/dev/sites/*/htdocs>
    Order allow,deny
    Allow from all
    AllowOverride All
    Options FollowSymLinks
</Directory>

<Directory /Library/WebServer/Documents>
    Order allow,deny
    Allow from all
    AllowOverride All
    Options FollowSymLinks
</Directory>

NameVirtualHost *:80
<VirtualHost *:80>
    ServerAdmin webmaster@dummy-host.example.com
    DocumentRoot "/Library/WebServer/Documents"
    ServerName localhost
    ServerAlias otto
</VirtualHost>


<VirtualHost *:80>
    ServerName demo
    ServerAlias demo.otto
    DocumentRoot /Users/rw/dev/sites/demo/htdocs
    ErrorLog /Users/rw/dev/sites/demo/log/error_log
    CustomLog /Users/rw/dev/sites/demo/log/access_log combined
</VirtualHost>

bedeutet: der default host ist wie gehabt unter /Library/WebServer/Documents. meine experimente finden unter /Users/rw/dev/sites/demo/htdocs statt, wobei demo der name des virtuellen hosts ist (otto ist der computername). die directory anweisungen sind dafür da, dass ich alles machen darf, sprich: symbolische links setzen und .htaccess dateien anlegen. jeder virtuelle host muss natürlich in die /etc/hosts eingetragen werden:

127.0.0.1       localhost demo

sonst bekommt man zb. statt dem demo server, demo.com zu gesicht, wenn man es im browser aufruft.

nach einem apache restart. haken in systemeinstellungen/ freigaben/ webfreigabe wegnehmen und wiederreinsetzen sollte dann php funktionieren. testbar über eine datei zb. info.php, die man in /Library/WebServer/Documents platziert und via http://localhost/info.php aufruft.

<?phpinfo()?>

hyperestraier

zu einer guten webanwendung gehört eine leistungsfähige suchmaschine. erste wahl ist hierbei hyperestraier. glücklicherweise ist das kompilieren absolut problemlos. voraussetzung ist die qdbm die sich aber auch klaglos kompilieren läßt. also qdbm runterladen unter http://qdbm.sourceforge.net/ auspacken, ins verzeichnis wechseln und dann die hlg3fltgk:

./configure
make mac
sudo make install-mac

man beachte die mac version von make und -install. nach selbigem verfahren bringt man dann auch den hyperestraier zum laufen.

spätestens jetzt wird es auch interessant /usr/local/bin in den systemsuchpfad von kommandozeilenprogrammen aufzunehmen. dazu ändert man die entsprechende zeile in der /etc/profile in

PATH="/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin"

das gilt dann für alle user. wenn man das nur für einen user möchte, trägt man in die /Users/username/.bash_profile diese zeile ein:

PATH="$PATH:/usr/local/bin"

imagemagick

viele webanwendungen verwenden imagemagick zur bildbearbeitung. und das zu recht, sind doch die resize ergebnisse denen der gd-lib in sachen qualität deutlich überlegen. als kommandozeilentool ist die installation i.d.R. auch vollkommen unkomliziert. leider ist imagemagick auf dem mac ein echtes sorgenkind. zwar gibt es mittlerweile ein binary auf den projektwebseiten, die systemintegration ist indes sehr unhandlich, so dass man davon abraten muss. (man muss entweder eine reihe von umgebungsvariablen setzen — dann auch wieder extra für den apache — oder ca. 10 symlinks setzen…) beim surfen nach einer neuen lösung bin ich auf ein interessantes script gestossen, dass das runterladen+kompilieren von imagemagick und den zahlreichen bibliotheken, von denen es abhängig ist, erleichtern soll. und es funktioniert wirklich:

http://github.com/maddox/magick-installer/tree/master

wer dieses shellscript direkt auschecken will (git clone) braucht natürlich noch den versionsverwaltungsclient (siehe nächster abschnitt).

testen, ob alles funktioniert, kann man z.b. mit dem kommando

convert logo: logo.gif

das sollte das gif mit dem kleinen magier erzeugen.

subversion und git

ein subversion client ist bei snow leopard schon dabei. git ist das neueste ding in sachen (dezentrale) versionsverwaltung. ich habe mir einen installer runtergeladen und der funktioniert auch (leo intel image):

http://code.google.com/p/git-osx-installer/

ja. das wars erstmal. jetzt hat man ein system, mit dem man schonmal einiges anstellen kann. viel spaß.


Kommentare

johnny am 9. Nov 2009 12:18

LAMP MAMPs funktioniert. Danke für die Beschreibung. Jetzt kommt bei mir noch der Rest drauf...


johnny am 21. Nov 2009 19:15

achtung, will man mysql mit rails verwenden, muss man die 64 bit version installieren. das installieren des gems funktioniert dann mit

sudo env ARCHFLAGS="-arch x86_64" gem install mysql -- --with-mysql-config=/usr/local/mysql/bin/mysql_config

da kann es passieren, dass noch fehlermeldungen wegen der doku gibt, diese können mit "--no-rdoc --no-ri" unterdrückt werden.


Kommentar
Dein Name *
Deine E-Mail-Adresse * (nur für die Redaktion, wird nicht veröffentlicht!)
Deine Internetseite
Bitte geben Sie den Text auf diesem Bild ein.
captcha image
Angaben für weitere Kommentare merken?
 

About
alotta-log is your friendly blogserver. multiuser - multiblog - php/my/xorc based.

currently this is a beta version. stay tuned.
Impressum
Disclaimer
"this site looks best if you come over here and look at my monitor."
 
Themen
Unser T-Shirt
neueste eintraege in diesem blog
mixtape

1 DJ T / Robot Riot - Electric Press Remix

2 Bucci Bag / More Lemonade - Sparkling Version

3 Soto / Hootenanny - Original Mix

4 Joe Galdo / Keef - Original Mix

5 Myagi / Subversion - Price Cuts Remix

6 DJ Fixx / Electric - Original Mix

7 DJ Fixx / Push Em Up - Original Mix

8 Klaus / Big Man - Original Mix

9 Jesse Saunders / Everybody - Slapin Breaks Remix

10 Soto / Manic - Soto Remix

11 Chikinki / Like It Or Leave It

www.flickr.com
Administration

rss/xml xorc based

alotta-less, 2009