Apache für PHP konfigurieren

Dieses Thema im Forum "Mac OS X Server, Serverdienste" wurde erstellt von Bodo, 23.12.2001.

  1. Bodo

    Bodo Thread Starter MacUser Mitglied

    Beiträge:
    639
    Zustimmungen:
    0
    MacUser seit:
    09.11.2001
    Da ich mich mit PHP beschäftigen möchte, hab ich mich mal im Netz kundig gemacht, wie unter Mac OS X der Apache zu konfigurieren ist. Hier mal die Zusammenfassung:


    1. Das Starten und Konfigurieren des Apache (Web Sharing) für grundlegende Nutzung

    Auf der Festplatte unter der Adresse [DLMURL]http://127.0.0.1/manual/[/DLMURL] findet sich das Online-Handbuch für den Apache-Server. Die Adresse im Browser eingeben, und schon wird die Startseite geöffnet (127.0.0.1 , oder localhost, verweist auf den eignen Mac, nicht ins Internet).

    Der Apache Web Server, der Teil des Mac OS X Packets ist, ist standardmäßig nicht konfiguriert, um PHP, MySQL, SSIs, CGIs, Symbolic Links oder die anderen Techniken auszuführen. Um Apache zu konfigurieren, gibt es leider kein grafisches Interface (das umsonst wäre, ich glaube Tenon bietet eines an). Hierfür muss das Terminal gestartet werden.

    Um die Konfigurations-Dateien editieren zu können, wird ein Texteditor benötigt. Um die Änderungen durchführen zu können, ist es notwendig, sich als root einzuloggen. Ist root noch nicht aktiviert, so muss dieser mit NetInfo Manager erst freigeschalten werden.

    Nun als root einlogen. Die zu editierenden Dateien sind normalerweise unsichtbar. Entweder man verwendet den Editor bbedit (oder vergleichbar) oder einfach TextEdit.

    Nun öffnet man das Terminal und den Editor. In das Terminal tippt man folgende Zeile ein: open /etc/httpd und schließt diese mit Return ab.

    (Der Ordner httpd liegt im Privat-Folder auf dem Startlaufwerk)

    Daraufhin öffnet sich ein neues Finder-Fenster. Dieses zeigt den Inhalt des Ordners httpd. Eine Sicherungskopie der Datei httpd.conf erstellen (etwa indem einfach eine Kopie auf den Desktop gezogen wird, oder man plaziert eine Kopie davon im httpd-Verzeichnis - "httpd.conf Kopie").

    Nun die (originale) Datei httpd.conf auf das Ikon des Editors im Dock ziehen. Die Datei wird nun folgendermaßen geändert:
    a.) etwa um Zeile 440:
    DirectoryIndex index.html
    abändern in
    DirectoryIndex index.html index.htm index.shtml index.php default.php

    b.) Beginnend mit der Zeile 818:
    Die Auskommentierungen (am Anfang der Zeile ein #) entfernen vor
    AddType application/x-httpd-php .php und AddType application/x-httpd-php-source .phps,
    auch von
    AddHandler cgi-script .cgi,
    sowie von
    AddType text/html .shtml
    und
    AddHandler server-parsed .shtml

    Die Datei httpd.conf abspeichern, und zwar ohne Resources oder sonstige Formatierung.

    Möchte man lokal auf WebSites zu greifen, die nicht im /User/Sites/-Ordner abgelegt worden sind:
    Dazu öffnet man im Finderfenster /httpd/ den Ordner users und sichert zuerst wieder die eigene .conf Datei auf dem Schreibtisch oder in einem anderen Ordner. Dann zieht man die config-Datei auf den Editor und ändert folgende Zeile

    Options Indexes MultiViews
    AllowOverride None


    ab auf

    Options Indexes MultiViews FollowSymLinks
    AllowOverride Options


    Der Apache Webserver muss neu gestartet werden, damit die Änderungen greifen.

    Das Starten des Apache Webservers erfolgt über das Terminal mit den Befehlen
    apachectl graceful,
    welcher im Terminal Meldungen ausgibt, die Rückschlüsse darüber geben, ob der Server hochgefahren ist und ob die Optionen aktiviert wurden.

    Ist diese Hürde anstandslos genommen, kann künftig der Webserver wieder über >Systemeinstellungen..>Sharing>Web Sharing ist deaktiviert>Start hochgefahren werden.

    Ob PHP nun funktioniert, kann man dann ganz einfach testen, in dem man eine index.html-Datei im Ordner /Users/~eigener_Kurzname/ in index.php umbenennt.




    Ach ja, Copyright by mir ;-)
     
    Zuletzt bearbeitet: 20.01.2002
  2. appelknolli

    appelknolli MacUser Mitglied

    Beiträge:
    1.159
    Zustimmungen:
    0
    MacUser seit:
    13.11.2001
    hey ganau das brauch ich,

    genau solche beschreibungen brauch ich kurz und buendig aber idioten sicher :rolleyes: . also fuer anfaenger in sachen webserver. ich habe oftmals gar nicht die zeit mich mit den speziefischen sachen zu beschaeftigen, ich brauche einfach nur ein system was laeuft und/oder eine software die das fuer mich erledigt ohne ein studium von buechern und software-docus die mich eigentlich nicht wirklich interessieren sonden nur um, wie in diesem fall, einen webserver einzurichten, der dann immer im hintergrund laeuft und hoffentlich nie aerger macht, den hat man ja schon mit nicht zahlenden kunden und dem finanzamt. ausserdem reicht ja schon wenn ich mich mit typographie, html & co, sowie druckvorstufe beschaeftigen muss denn das macht ausser der eigentlichen arbeit ja schon arbeit und lernaufwand genug. wenn mein monitor oder drucker defekt ist frage ich ja auch nicht nach einem schaltplan mit loetanleitung sondern bringe ihn in die fachwerkstatt-oder?

    ...danke Bodo

    euer appel :D
     
  3. Vevelt

    Vevelt MacUser Mitglied

    Beiträge:
    1.611
    Zustimmungen:
    0
    MacUser seit:
    01.09.2001
    Webmin?

    Hallo,

    kennt ihr Webmin? Das soll ein Freeware-Tool zur Administration des Apache-Servers per HTML (Browser) sein? :D (Falls sich jemand damit beschäftigt... --> unbedingt hier posten! :D)

    Lieben Gruß, Vevelt.
     
  4. Bodo

    Bodo Thread Starter MacUser Mitglied

    Beiträge:
    639
    Zustimmungen:
    0
    MacUser seit:
    09.11.2001
    Korrektur

    Mac OS X Apache für PHP konfigurieren (Korrektur)

    Dies ist eine überarbeitete Version meines ersten Postings. Diese wurde nötig, da ich selber bei weiteren Versuchen in ziemliche Konfusion geraten bin, was somit zur Überarbeitung der Anleitung führte:

    Das Starten und Konfigurieren des Apache (Web Sharing) für grundlegende Nutzung

    Auf der Festplatte unter der Adresse http://127.0.0.1/manual/ findet sich das Online-Handbuch für den Apache-Server. Die Adresse im Browser eingeben, und schon wird die Startseite geöffnet (127.0.0.1, oder localhost, verweist auf den eignen Mac, nicht ins Internet).

    Da ich mir beim letzten Mal wohl zuviel auf einmal vorgenommen habe, soll jetzt wirklich erstmal nur PHP aktiviert werden.

    Wichtig: root-Rechte erforderlich.

    TextEdit und das Terminal starten. Im Terminal eingeben:
    open /etc/httpd (Leerzeichen nach "open"), Return.

    Aus dem nun geöffneten Finder-Fensters des Verzeichnisses httpd die Datei httpd.conf auf TextEdit ziehen.

    Nun die Datei httpd.conf auf das Ikon des Editors im Dock ziehen. Die Datei wird nun folgendermaßen geändert (Zum Auffinden hilft dabei das "Suchen"-Menü von TextEdit):

    a.)
    DirectoryIndex index.html
    abändern in
    DirectoryIndex index.html index.htm index.php default.php

    b.)
    Die Auskommentierungen (am Anfang der Zeile ein #) entfernen vor
    AddType application/x-httpd-php .php
    und
    AddType application/x-httpd-php-source .phps

    c.)
    Ebenfalls entfernen muss man das Kommentarzeichen(#) vor den Zeilen:

    # LoadModule php4_module libexec/httpd/libphp4.so
    # AddModule mod_php4.c

    Die Datei httpd.conf abspeichern, und zwar ohne Resources oder sonstige Formatierung.


    Damit die Änderungen greifen, muss Apache neu gestartet werden (>Systemeinstellungen..>Sharing>Web Sharing ist deaktiviert>Start).

    Gibt man dann im Terminal
    tail /var/log/httpd/error_log
    ein, dann wird einem mitgeteilt, ob Apache das PHP-Modul geladen hat. Die Meldung sieht dann in etwa so aus:
    [notice] Apache/1.3.22 (Darwin) PHP/4.0.6 configured -- resuming normal operations

    Der ultimative Test ist nun, im eigenen Home-Verzeichnis in den Ordner Sites eine Datei mit folgendem Inhalt zu legen:

    <html><body>
    <h1>Jetzt wolle mer abe mal sehen</h1>
    <? phpinfo()?>
    </body></html>


    Man kann sie index.php oder test.php benennen.

    In meinem Fall starte ich jetzt den Browser und gebe die URL http://127.0.0.1/~bodo/test.php
    ein.

    Als Ergebnis wird mir eine umfangreiche Seite mit Statusangaben zu PHP ausgegeben.

    Sollte das alles zu Verwirrungen und schlaflosen Nächten begleitet von Flüchen geführt haben (wie bei mir selbst), so möchte ich mich entschuldigen. Da aber niemand da ist, der einen an der Hand nimmt, bleibt nur "doing it the hard way".
     
    Zuletzt bearbeitet: 23.01.2002
  5. bondiblue

    bondiblue MacUser Mitglied

    Beiträge:
    258
    Zustimmungen:
    0
    MacUser seit:
    27.10.2001
    hi

    sehr gut beschrieben und ubersichtlich.die sachen habe ich auf anhieb gefunden... jedoch weiss nicht wie ich mich als root eillogen soll. mit su in der konsole bekomme ich ein sorry nach der passwd eingabe. hm wie setzte ich ein root passwd an oder ist eins als standard eingerichtet??? unter netinfo users root die zeile passwd editiert jedoch ohne ein sichtbares erfolg!!! was mache ich verkehrt?

    hoffe auf hilfe
    thx im vorraus

    bondiblue
     
  6. ThomasWolf

    ThomasWolf MacUser Mitglied

    Beiträge:
    191
    Zustimmungen:
    0
    MacUser seit:
    10.11.2001
    hi

    mit NetInfo Manager (/Applications/Utilities) im Menue Domain > Sicherheit > root-Benutzer aktivieren.

    wenn du das zum ersten mal machst, könnte der MenuePunkt anders (aber ähnlich - habe das leider vergessen) heissen. Du wirst dann auch aufgefordert ein root-Kennwort anzulegen.

    macige Grüsse
    ThomasWolf
     
  7. maclooser

    maclooser MacUser Mitglied

    Beiträge:
    1.107
    Zustimmungen:
    0
    MacUser seit:
    10.11.2001
    was aber auch sehr wichtig ist...

    Deaktiviere über Systemsteuerung/Anmeldung/Anmeldefenster die Option "Automatisch anmelden" und aktiviere "alle anderen Benutzer...". Anschließend klappt es auch mit der Ruth(root)!
     
  8. Vevelt

    Vevelt MacUser Mitglied

    Beiträge:
    1.611
    Zustimmungen:
    0
    MacUser seit:
    01.09.2001
    Noch mehr Infos über MySQL und PHP...

    findet ihr hier. Ich hab' mal ein paar nützliche Links zu jenen Themen zusammengestellt... :D

    Gruß, Vevelt.
     
  9. Georg Meyer

    Georg Meyer MacUser Mitglied

    Beiträge:
    6
    Zustimmungen:
    0
    MacUser seit:
    08.07.2002
    Apache

    Na Prima,
    ich hab alles so gemacht, aber ich glaube ich hab mir den Server abgeschossen.
    Ich krieg immer die folgende Meldung:
    "
    [localhost:~] root# apachectl graceful
    /usr/sbin/apachectl graceful: httpd not running, trying to start
    Processing config directory: /private/etc/httpd/users
    Processing config file: /private/etc/httpd/users/.DS_Store
    Syntax error on line 2 of /private/etc/httpd/users/.DS_Store:
    Invalid command '? perhaps mis-spelled or defined by a module not included in the server configuration
    /usr/sbin/apachectl graceful: httpd could not be started
    [localhost:~] root#
    "
    Wer kann helfen ?
     
  10. Woulion

    Woulion MacUser Mitglied

    Beiträge:
    1.310
    Zustimmungen:
    0
    MacUser seit:
    06.06.2002
    Da kann ja alles mögliche passiert sein, aber aus eigener leidvoller Erfahrung hier ein paar Tips zum Debuggen:

    1. Ich kann nur dazu raten, die Finger vom root-Account zu lassen. So ziemlich alles läßt sich mit sudo erledigen, und es birgt nicht so viele Gefahren. Mit der root kennung kann man sich eine Installation komplett zerlegen, da hilft dann nur noch der Backup, oder die Neuinstallation.
    2. Da editieren der httpd.conf geht hervorragend mit BBEdit (ob auch mit der Lite-Version, weiss ich nicht, sollte aber möglich sein). Über den Befehl "Open Hidden" kommt man an die httpc.conf ran (alternativ: Im Finder den Menupunkt "Gehe zum Ordner" wählen und in das Dialogfeld /private/etc/httpd eintragen, dann die Datei httpd.conf auf ein Alias von BBEdit oder das Programm selber ziehen)
    3. Hilfreich ist immer das error_log. Das liegt in der Regel unter /var/log/httpd. Zum debuggen ein Terminalfenster öffnen, folgendes eingeben:
    cd /var/log/httpd
    tail -f error_log

    Dies zeigt kontinuierlich das Ende des logs an, zum Beenden ctrl+C drücken
    4. Eine Sicherungskopie der httpd.conf liegt ebenfalls unter /private/etc/httpd als httpd.conf.bak und die default-Konfiguration als httpd.conf.default.
    Zur Not kann man die default-Konfiguration durch ein Überschreiben der httpd.conf mit der httpd.conf.default wieder herstellen.

    5. Es empfiehlt sich immer, Veränderungen in der httpd.conf schrittweise vorzunehmen und funktionierende Konfigrationen als Sicherungskopie zu behalten.

    So, genug des allgemeinen Geschwafels.
    In deinem Fall scheint das Problem darin zu bestehen, das der Apache Server die .DSStore als Konfigurationsdatei zu prozessieren versucht, was natürlich nicht geht. Wahrscheinlich liegt der Fehler in der Direktive für das handling der .DSStore-Dateien (das ist eine Sicherheitslücke in der Apple Apache Installation).
    Eine korrekt Direktive sollte so aussehen.

    <FilesMatch "^\.[Dd][Ss]_[Ss]">
    Order allow,deny
    Deny from all
    </FilesMatch>

    Ist aber nur so eine Vermutung, denn ohne konkrete Kenntnis deiner htpd.conf läßt sich aus der ferne schwer sagen, was da schief gelaufen ist. Der Server ist aber auf gar keinen Fall zerschossen, im worst case mußt Du wieder von vorne anfangen.

    HTH
    W
     
Die Seite wird geladen...
Ähnliche Themen - Apache PHP konfigurieren
  1. quwax
    Antworten:
    1
    Aufrufe:
    183
    quwax
    06.09.2016
  2. Admiral
    Antworten:
    1
    Aufrufe:
    268
    PaulFH
    22.06.2016
  3. filz
    Antworten:
    6
    Aufrufe:
    1.452
    filz
    10.10.2014
  4. macinsell
    Antworten:
    0
    Aufrufe:
    620
    macinsell
    06.11.2013
  5. Saugkraft
    Antworten:
    3
    Aufrufe:
    419
    Saugkraft
    18.12.2012