• Apfeltalk ändert einen Teil seiner Allgemeinen Geschäftsbedingungen (AGB), das Löschen von Useraccounts betreffend.
    Näheres könnt Ihr hier nachlesen: AGB-Änderung
  • Es regnet, ist neblig und kalt, alle sind krank und der Chef wird zunehmend cholerisch. Das Thema des Monats ist also folgerichtig --> Das Grau(en)
    Wir sind gespannt, war Euch dazu einfällt! Zum Wettbewerb --> Klick

PHP startet nicht unter MAMP

lesnoj

Braeburn
Registriert
25.08.07
Beiträge
43
Mac OS X 10.4 11

Hallo Freunde,
Ich bin totale Anfänger und nach der misslungenen versuchen Mac-eigene Apache mit PHP und Perl zu konfigurieren habe ich eine Lösung für "Grünschnabel" gefunden = MAMP

Nun habe ich MAMP installiert und wollte gleich ausprobieren.
Im Verzeichnis Programme/MAMP/htdocs habe ich eine "index.htm" angelegt mit folgendem Code:

<html>
<head>
<link rel="stylesheet" type="text/css" href="../../Users/Alex/Sites/Euro_SCA/styles.css">
<title></title>
</head>
<body bgcolor="#ffffff" text="#000000" link="#ff00ff" vlink="#cc00cc" alink="#aa00aa">

<?php
echo "Hallo, ich bin ein PHP-Skript!";
?>

</body>
</html>

Im Firefox gebe ich: file://localhost/Applications/MAMP/htdocs/index.htm und es passiert gar nichts! Html Seite ist leer und PHP-mäßig tut sich überhaupt nichts.

Dann habe ich eine Datei info.php abgespeichert in
Programme/MAMP/htdocs
Code:

<?php
phpinfo();
?>


Firefox aufruf:
file://localhost/Applications/MAMP/htdocs/info.php
Und es passiert wieder nichts! Was mache ich falsch?

Wenn ich auf http://localhost/ im Firefox gehe dann sehe ich Apache Startseite.
Vor der MAMP Installation habe ich Personal Web Sharing deaktiviert und es ist deaktiviert! Das heisst der Apache oder Apache-Startseite kommt von MAMP oder?

Wo ist die Apache Startseite (index.html) auf meinem Rechner abgespeichert? In der Readme Datei von MAMP habe ich gelesen dass man alle HTML und PHP Dokumente im Verzeichnis
Programme/MAMP/htdocs abspeichern muss. Warum läuft das denn nicht? Muss ich irgendetwas aktivieren?

P.S.
MySQL scheint zu funktionieren! Habe aus meinem vorhandenem MySQL ein Datenbank in MAMP mittels phpMyAdmin importieren können.

Kennt jemand ein MAMP Tutorial oä ?
 

MrNase

Champagner Reinette
Registriert
11.01.05
Beiträge
2.656
Du machst ne Menge falsch. *g*

1. Wenn du es nicht explizit eingestellt hast, dann musst du die Datei index.php nennen damit der dort enthaltene PHP-Code ausgeführt wird. Eine index.html oder index.htm darf keinen PHP-Code enthalten weil er dort schlichtweg nicht interpretiert wird. Man kann das natürlich ändern aber das ist nicht zu empfehlen.

2. Wenn du MAMP gestartet hast dann darfst du die Datei nicht über file://localhost/Applications/MAMP/htdocs/index.htm aufrufen. Ein Aufruf erfolgt dann über http://localhost:8888/index.htm

Wenn du einen Ordner 'test' im Ordner htdocs hast dann erfolgt der Aufruf über http://localhost:8888/test/index.htm

Unter http://localhost:8888/ siehst du eine Auflistung aller Dateien und Ordner im Verzeichnis 'htdocs'.
 
  • Like
Reaktionen: doeme89

lesnoj

Braeburn
Registriert
25.08.07
Beiträge
43
Ich weiß gar nicht wie ich dir danken soll!
Ich habe alle mögliche Manuals und tutorials durchgeschaut und keine Lösung gefunden. Es wird zwar ausführlich beschrieben wie man Programmiert aber nicht wie man startet (Installation, Verzeichnise etc.)
Habe vor Jahren CGI mit Perl geschrieben und wäre nie auf die Idee gekommen dass man index.html in index.php umbenennen soll.

Also wenn ich über http://localhost:8888/index.php aufrufe dann funktioniert alles (Danke!).
Wenn ich aber http://localhost:8888/info.php eingebe dann kommt Fehler The requested URL /info.php was not found on this server. Obwohl in einem Tutorial das so beschrieben wurde.

Wenn ich
http://localhost:8888/ aufrufe dann wird index.php angezeigt (ich meine Seiteninhalt und nicht der Auflistung aller Dateien und Ordner im Verzeichnis 'htdocs'.
???

P.S.
Übrigens wie führe ich hier einen Perl Script aus?
Ist Perl in MAMP schon installiert? Ist er auf dem Mac schon irgendwo vorinstalliert? Wo platziere ich meine CGI Scripte? (wahrscheinlich in cgi-bin)

Kann ich meine Projekte in einem Anderem Verzeichnis speichern und ausführen? z.B User/Web-Sites (Programm-Verzeichnis von MAMP ist wirklich nicht Mittel der Wahl). Habe diese Option in Einstellungen von MAMP gesehen aber nur für htdocs. Doch wie mache ich das dann mit Perl-CGI und MySQL-Datenbanken?
Es muss alles möglichst in einem Verzeichniss liegen weil ich später den gesamten Projekt auf einen anderen Rechner (Server) übertragen möchte. Und ich habe jetzt schon Angst dass ich dann mit Pfaden in Scripten durcheinander komme!
 

MrNase

Champagner Reinette
Registriert
11.01.05
Beiträge
2.656
Ein feuchter Händedruck reicht als Dankeschön. ;)

Wenn du http://localhost:8888/info.php aufrufst, dann versuch der Server die Datei info.php direkt im Ordner 'htdocs' zu finden.
Wenn du die Datei in einen Unterordner verschoben hast dann erfolgt der Aufruf zum Beispiel durch: http://localhost:8888/unterordner/info.php

Die Liste aller Dateien und Ordner in Ordner 'htdocs' durch Eingabe von http://localhost:8888/ erfolgt (und da lag mein Fehler) nur wenn keine Datei mit dem Namen index.html, index.htm oder index.php vorhanden ist.

Ich habe alle MAMP-Dateien aus dem Ordner 'htdocs' gelöscht damit meine Projekte dort mehr Platz haben und deswegen sieht es bei mir etwas anders aus. :)


Du kannst deine Projekte auch in einem anderen Ort speichern lassen. Dann solltest du allerdings die MAMP.app ausführen (zu finden im MAMP-Ordner) und dort in den Optionen den Ort ändern. :)

Die MySQL-Datenbanken werden immer in das Verzeichnis im MAMP-Ordner gespeichert was aber kein Problem darstellen sollte weil du die eigentlichen Dateien ja eigentlich nie brauchen wirst.


Wie es mit CGI aussieht kann ich dir leider nicht sagen. Das letzte mal habe ich mich vor 5 Jahren mit diesem Thema beschäftigt. ;)

Ich habs mir noch mal angeguckt.. Im Hauptordner von MAMP findet sich der Ordner 'cgi-bin'. Alles was du da reinpackst kann über den Browser aufgerufen werden:
http://localhost:8888/cgi-bin/test-cgi


Die Pfade kannst du über die Datei httpd.conf anpassen (Ordner: MAMP/conf/apache/). Für cgi-bin zum Beispiel in der Zeile 690.
Das ist jedoch nicht ganz ungefährlich also leg dir erst ne Sicherung der httpd.conf an.
 
  • Like
Reaktionen: Nathea

lesnoj

Braeburn
Registriert
25.08.07
Beiträge
43
Ok, hier ist ein "feuchter Händedruck" :)
Mit PHP hat sich zum Glück alles erledigt und scheint zu funktionieren.

Perl-CGI brauche ich zwar noch nicht wollte aber wissen ob das schon irgendwo im Mac steckt wie Apache oder muss ich das installieren.

Mit PHP habe ich keine Erfahrungen Perl dagegen habe ich schon mal einwenig früher gemacht (zwar nicht für Web und CGI aber dennoch). Kann mich aber erinnern dass die Sprache so mächtig wie C++ ist und keine alternativen braucht aber PHP scheint für Web der Renner zu sein und sieht von Syntax auch akzeptabel aus (Wird auch mit MAMP mitgeliefert). Na dann probiere ich es mal aus.

Ich will ja keine richtige Web-Platform entwickeln sondern nur Ergebnisse meiner Doktorarbeit in MySQL abspeichern und anderen Kollegen zugänglich machen (bin Medizinstudent). Habe mir gedacht das ganze Web-basiert zu erstellen und in Intranet
zu legen. Für alle andere Möglichkeiten bin ich einfach zu doof. :)

Danke dir nochmals!