Forum
Tipps
News
Menu-Icon

Suse: 9.1: Apache - Mozilla keinen Kontakt zu localhost

Hei!
Ich möchte eine php-Datei in Mozilla anzeigen. Dazu habe ich die Datei in das Verzeichnis srv.www.htdocs kopiert, welches meines Wissens das Root-Verzeichnis des Webservers ist. Allerdings bekomme ich in Mozilla beim Aufrufversuch die Meldung, das keine Verbindung zum localhost aufgebaut werden kann.

Ich habe sowohl Mysql, Apache und php von der Suse-CD installiert.

Kann mir jemand helfen?

Gruss Sputnik


Antworten zu Suse: 9.1: Apache - Mozilla keinen Kontakt zu localhost:

Hallo,

installieren alleine reicht nicht, musst die Server auch starten.

als Root in einer Konsole mit:

rcapache2 start    ENTERTASTE

und

rcmysql start     ENTERTASTE  

Damit es auch beim Neustart noch funktioniert im Runeleveleditor die dienste in Runlevel 3 und 5 dauerhaft aktivieren.




Hei,
danke für die Antwort!
Die Dienste scheinen jetzt zu laufen, nur jetzt bekomme ich im Browser angezeigt:

Zugriff verweigert!
Der Zugriff auf das angeforderte Verzeichnis ist nicht möglich. Entweder ist kein Index-Dokument vorhanden oder das Verzeichnis ist zugriffsgeschützt.

Wenn ich die Datei direkt aufrufe, kommt:

Zur Zeit keine Verbindung zum Datenbankserver möglich.

Was mache ich falsch?

Gruss Sputnik

Hallo,

die Datei muß weltlesbar sein
also mind. ein
chmod 444

Hallo,

Deine PHP Applikation sollte dem Apachen gehören, bei SuSE ist dies der User www und die Gruppe wwwrun. Drehe nicht soviel an den Dateirechten , die sind bei fertigen PHP-Apps wie beispielsweise das Hordeframework meist richtig vorgegeben.
Im Fall von Horde brauchst Du aber noch mehr. In PHP wird mittlerweile auch mit Klassenbibliotheken programmiert ähnlich  C++, Java. Dazu musst Du die ganzen PEAR Klassenbiliotheken aus dem Netz "zu Fuss" per Komandozeile installieren, nur so zur Info.

Aber nun zum Kernproblem:

Logge dich als Root in eine Konsole ein

wechsle zu htdocs( Unterhalb von htdocs sollte dein Verzeichnis mit der Applikation liegen )

also

cd /srv/www/htdocs    ENTERTATE

chown -R www:wwwrun verzeichnisname ENTERTASTE

Voraussetzung das php überhaupt läuft ist, dass das Apache- phpmodul geladen ist. Die Susie nimmt Dir eigentlich die Konfiguratioinsarbeit des  Indianers vollständig ab, wenn Du phplib und phpMyAdmin installierst. Dabei werden alle notwendigen Abhängigkeiten aufgelöst und die libs installiert sowie der Apache für PHP automatisch konfiguriert.
Nach der Installtion den Indianer mit

rcapache2 restart   ENTERTASTE neu starten damit die Änderungen wirksam werden.

Ob dann PHP rennt, testest Du recht einfach mit dem MySQL-Konfigtool phpMyAdmin.

Tippe in die Browserzeile nach der Installation

http://localhost/phpMyAdmin   ENTER

und Du solltest das PHP Programm zur Konfiguration des Datenbankservers sehen. ( MySQL selbst sollte laufen damit Du auch die Datenbank(en)) damit administrieren kannst.

Viel Erfolg








Hei,
also so langsam verliere ich die Übersicht. Aber ich versuche mal, die Geschehnisse zu rekonstruieren:
Also ich habe mysql und apache 2 von Hand gestartet und die phplib nachinstalliert, wobei sich da gleichzeitig unheimlich viele php-Pakete mitinstalliert haben (Abhängigkeiten etc.). Ich bin mir nicht ganz sicher, was jetzt den Ausschlag gab, aber danach veränderte sich die Meldung im Browser von "The connection was refused when attempting to contact local host" zu sowas wie 'es konnte kein kontakt zu mysql aufgebaut werden'. Und dann stand da auf der Seite, dass man die Nutzerdaten in der config.inc.php kontrollieren soll. Da habe ich dann gesehen, dass kein Passwort eingetragen war. Das habe ich dann gemacht, und danach bekam ich die phpadmin-Seite und hatte Zugriff auf meine mysql-Datenbank. Soweit alles in Butter!
Dann habe ich mir allerdings Deine Meldung nochmal angesehen, und da das vom Neustarten von apache2 gelesen. Da ich das noch nicht gemacht hatte, habe ich das nachgeholt, und nun bin ich wieder am Ausgangspunkt: "The connection was refused when attempting to contact local host"

Was passiert denn hier?
Bin dann nochmal alles von vorne durchgegangen. Yast sagt, dass apache und mysql aktiviert sind (hatte ja im Runleveleditor automatischen Start eingetragen). Wenn ich allerdings in der Konsole "rcapache2 start" eingebe, kommt da "failed". Die Änderungen in der config.inc.php sind immernoch da. Aber läuft den der Apache nun oder nicht?
Kann das Problem damit zu tun haben, dass ich vor der Installation des Apachen einen Konflikt angezeigt bekam, wo als mögliche Lösungen die Installation von irgendwas pre oder work (??) angezeigt wurde. ich entschied mich für die Nummer eins in der Liste.

Du schriebst ausserdem: chown -R www:wwwrun verzeichnisname ENTERTASTE

Was meinst Du denn mit Aplikation bzw. Verzeichnis? phpadmin?

Für Hilfe wäre ich dankbar!

Gruss Sputnik

Hallo,

mit rcapche2 status solltest du erfahren ob Apache läuft, dann würd ich dir vorschlagen versuch erstmal eine einfache html-Seite auf den webserver zu läufen zu bringen wenn das klappt

da kannst weitermachen aber ohne zu wissen, mehr zu ahnen ob geht ist das nicht gut was du machst und machhst dir mehr Stress als nötig

Hallo,

sieht ja alles soweit nicht schlecht aus. Es gibt mehrere Apache MPM's für bestimmte Zwecke wie worker, prefork ( mehr davon siehe Apache Doku ) Achte darauf das prefork das Aktive ist nur dann klappt es auch mit php. Worker unterstützt (noch) nicht alles und ist für Mehrprozessormaschinen gedacht.

stoppe den indianer mit

rcapache2 stop

kontolliere in yast-Software installieren ob nur apache2-prefork installiert ist! falls auch worker installiert sein sollte löschen sonst läuft der Indianer instabil, weil SuSEconfig greift sich das erst beste Modul. Sollte es gerade worker sein, pech, kein PHP und nicht richtig Perl. Die MPM's sind die elementraren Module, der eigentliche Apache, ähnlich dem Kernel fürs Betriebssystem um mal einen leicht hinkenden Vergleich zu wählen.
Wenn nur apache2-prefork installiert ist verlinkt SuSEconfig das Teil richtig.

installiere auch die apache2-examplepages!. Wenn Du dann im Browser http://localhost   eingibst begrüßt dich der Indianer  und erzählt Dir das Du soeben erfolgreich einen Apache Webserver installiert hast. Damit erhälst Du die Bestätigung das er in den Grundfunktionen ( html ) rennt.  

So
nun den Indianer wieder starten mit

rcapache2 start  

2. chown

Programme die der Apache ausliefert sollten nur mit den !eingeschränkten Rechten! ( Sicherheit ) des Webservers laufen!! Wenn Du beispielsweise per Eclipse ein PHP Progrämmchen erzeugt hast, sollte dies und das ( anzulegende ) Verzeichnis unterhalb von htdocs in dem es abgelegt wird mit den Rechten des Webservers versehen werden, also www und wwwrun. Der Apache braucht schreib- und leserechte in dem Verzeichnis und dies klappt nur wenn die php-datei/verzeichnis zur gleichen Gruppe und user gehört wie der apache selbst. Das war mit der obigen Ausführungen gemeint.

Hoffe das reicht erst mal. Will eigentlich keinen Crashkurs in Webserverkonfiguration und PHP(programmierung) starten.

Viel Erfolg


Hei!
Es war nur prefork installiert, ist also wie es sein sollte. Beispielseiten sind installiert.
Nur beim erneuten Starten des Apachen kommt: 'Starting httpd2 (prefork) failed'.

Das heisst wohl, dass der Apache nicht läuft, oder? (Bei der Eingabe von 'rcapache2 status' kommt 'unused'

Gruss Sputnik

Hallo,

schau mal bitte per konsole(xterm) in die Datei
cat /var/log/apache2/error_log
und
cat rcapache2.out

der Befehl
rcapache2 status
sollte diese Ausgabe haben
Checking for httpd2:  running

und
rcapache2 start
diesen
Starting httpd2 (prefork) done

Hallo Kersten,
leider muss ich nochmal nachfragen, bevor ich das falsch verstehe:

schau mal bitte per konsole(xterm) in die Datei
cat /var/log/apache2/error_log
und
cat rcapache2.out

Was ist xterm? Und cat ist ein Befehl, den ich eingeben soll?

Habe die log-Datei mit mc angesehen, und da steht bei den letzten Fehlermeldungen immer was von 'session cache is not configured' und 'suEXEC mechanism enabled (wrapper: /usr/sbin/suexec2)'

Gruss Sputnik

Hallo,

Ja,
cat ist ein Befehl zum in Dateien schauen
und xterm wäre aufrufen der Konsole auf der grafischen Oberfläche
mit "F2" die Befehlzeile und dann xterm,

aber da du des mc mächtig bist ist es auch so gut ;)

Weiter steht nix drin?

was steht in der
rcapache2.out

Die test seite des Apachen wird gezeigt?

mit
http://localhost
http://127.0.0.1
http://IP-Adresse des PC's

Hallo,

tippe mal als root in einer Konsole

rcapache2 configtest   ENTERTATE

Sollte

Syntax OK  ausgeben oder einen gezielten Hinweis auf den Fehler  

Hallo Kersten und Dr. Suse!
Also in der error_log steht:
[Wed Apr 20 10:44:56 2005] [warn] Init: Session Cache is not configured [hint: SSLSessionCache]
[Wed Apr 20 10:44:56 2005] [notice] suEXEC mechanism enabled (wrapper: /usr/sbin/suexec2)
[Wed Apr 20 10:44:58 2005] [notice] Apache/2.0.49 (Linux/SuSE) configured -- resuming normal operations
[Wed Apr 20 10:45:50 2005] [error] [client 127.0.0.1] Directory index forbidden by rule: /srv/www/htdocs/
[Wed Apr 20 10:46:18 2005] [error] [client 127.0.0.1] Directory index forbidden by rule: /srv/www/htdocs/
[Wed Apr 20 10:49:55 2005] [error] [client 127.0.0.1] Directory index forbidden by rule: /srv/www/htdocs/
[Wed Apr 20 10:55:16 2005] [error] [client 127.0.0.1] Directory index forbidden by rule: /srv/www/htdocs/
[Wed Apr 20 10:55:26 2005] [error] [client 127.0.0.1] Directory index forbidden by rule: /srv/www/htdocs/, referer: http://localhost/
[Wed Apr 20 10:57:49 2005] [error] [client 127.0.0.1] Directory index forbidden by rule: /srv/www/htdocs/, referer: http://localhost/
[Wed Apr 20 10:57:50 2005] [error] [client 127.0.0.1] Directory index forbidden by rule: /srv/www/htdocs/, referer: http://localhost/
[Wed Apr 20 10:57:51 2005] [error] [client 127.0.0.1] Directory index forbidden by rule: /srv/www/htdocs/, referer: http://localhost/
[Wed Apr 20 10:57:52 2005] [error] [client 127.0.0.1] Directory index forbidden by rule: /srv/www/htdocs/, referer: http://localhost/
[Wed Apr 20 10:57:53 2005] [error] [client 127.0.0.1] Directory index forbidden by rule: /srv/www/htdocs/, referer: http://localhost/
[Wed Apr 20 10:57:53 2005] [error] [client 127.0.0.1] Directory index forbidden by rule: /srv/www/htdocs/, referer: http://localhost/
[Wed Apr 20 10:57:54 2005] [error] [client 127.0.0.1] Directory index forbidden by rule: /srv/www/htdocs/, referer: http://localhost/
[Wed Apr 20 10:57:55 2005] [error] [client 127.0.0.1] Directory index forbidden by rule: /srv/www/htdocs/, referer: http://localhost/
[Wed Apr 20 11:08:19 2005] [error] [client 127.0.0.1] Directory index forbidden by rule: /srv/www/htdocs/
[Wed Apr 20 11:08:23 2005] [error] [client 127.0.0.1] Directory index forbidden by rule: /srv/www/htdocs/
[Wed Apr 20 11:08:23 2005] [error] [client 127.0.0.1] Directory index forbidden by rule: /srv/www/htdocs/
[Wed Apr 20 11:08:24 2005] [error] [client 127.0.0.1] Directory index forbidden by rule: /srv/www/htdocs/
[Wed Apr 20 11:09:13 2005] [error] [client 127.0.0.1] Directory index forbidden by rule: /srv/www/htdocs/
[Wed Apr 20 11:12:13 2005] [error] [client 127.0.0.1] Directory index forbidden by rule: /srv/www/htdocs/
[Wed Apr 20 11:12:17 2005] [error] [client 127.0.0.1] Directory index forbidden by rule: /srv/www/htdocs/
[Wed Apr 20 11:12:39 2005] [error] [client 127.0.0.1] Directory index forbidden by rule: /srv/www/htdocs/
[Wed Apr 20 11:16:09 2005] [error] [client 127.0.0.1] Directory index forbidden by rule: /srv/www/htdocs/
[Wed Apr 20 13:04:06 2005] [notice] caught SIGTERM, shutting down
[Wed Apr 20 16:59:34 2005] [warn] Init: Session Cache is not configured [hint: SSLSessionCache]
[Wed Apr 20 16:59:34 2005] [notice] suEXEC mechanism enabled (wrapper: /usr/sbin/suexec2)
[Wed Apr 20 16:59:34 2005] [notice] Apache/2.0.49 (Linux/SuSE) configured -- resuming normal operations
[Wed Apr 20 21:04:43 2005] [error] [client 127.0.0.1] Directory index forbidden by rule: /srv/www/htdocs/
[Wed Apr 20 21:25:43 2005] [notice] caught SIGTERM, shutting down
[Wed Apr 20 21:25:44 2005] [warn] Init: Session Cache is not configured [hint: SSLSessionCache]
[Wed Apr 20 21:25:44 2005] [notice] suEXEC mechanism enabled (wrapper: /usr/sbin/suexec2)
[Wed Apr 20 21:29:36 2005] [warn] Init: Session Cache is not configured [hint: SSLSessionCache]
[Wed Apr 20 21:29:36 2005] [notice] suEXEC mechanism enabled (wrapper: /usr/sbin/suexec2)
[Wed Apr 20 21:56:57 2005] [warn] Init: Session Cache is not configured [hint: SSLSessionCache]
[Wed Apr 20 21:56:57 2005] [notice] suEXEC mechanism enabled (wrapper: /usr/sbin/suexec2)
[Wed Apr 20 21:57:52 2005] [warn] Init: Session Cache is not configured [hint: SSLSessionCache]
[Wed Apr 20 21:57:52 2005] [notice] suEXEC mechanism enabled (wrapper: /usr/sbin/suexec2)
[Thu Apr 21 09:10:54 2005] [warn] Init: Session Cache is not configured [hint: SSLSessionCache]
[Thu Apr 21 09:10:54 2005] [notice] suEXEC mechanism enabled (wrapper: /usr/sbin/suexec2)
[Thu Apr 21 11:24:23 2005] [warn] Init: Session Cache is not configured [hint: SSLSessionCache]
[Thu Apr 21 11:24:23 2005] [notice] suEXEC mechanism enabled (wrapper: /usr/sbin/suexec2)
[Thu Apr 21 15:55:30 2005] [warn] Init: Session Cache is not configured [hint: SSLSessionCache]
[Thu Apr 21 15:55:30 2005] [notice] suEXEC mechanism enabled (wrapper: /usr/sbin/suexec2)

In der rcapache2.out steht: Syntax OK
Das Gleiche wirft 'rcapache2 configtest' aus.

Gruss Sputnik

Hallo,

[Thu Apr 21 20:40:23 2005] [notice] suEXEC mechanism enabled (wrapper: /usr/sbin/suexec2)
[Thu Apr 21 20:40:32 2005] [notice] Apache/2.0.53 (Linux/SUSE) configured -- resuming normal operations
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Muss am Ende der error.log stehen sonst ist was faul ( siehe weiter unten).

Tippe mal

SuSEconfig   ENTERTASTE als Root ein

dann

tail -f /var/log/apache2/error.log  ENTERTASTE

und starte den Apachen mit

rcapache2 start   ENTERTASTE und beobachte die Ausgabe von tail


Deine Fehlerliste:

Wed Apr 20 11:09:13 2005] [error] [client 127.0.0.1] Directory index forbidden by rule: /srv/www/htdocs/
[Wed Apr 20 11:12:13 2005] [error] [client 127.0.0.1] Directory index forbidden by rule: /srv/www/htdocs/
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
bedeutet das ein Datei/Verzeichnisrecht nicht stimmt. Apache kann auf sein Auslieferungsverzeichnis nicht zugreifen und bricht den Start ab. PRÜFE DIE RECHTE !! Siehe dazu auch das Adminhandbuch ( Klick auf den Rettungsring )

Thu Apr 21 15:55:30 2005] [warn] Init: Session Cache is not configured [hint: SSLSessionCache]
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Ist unkritsch, verschwindet wenn Du ssl konfiguriert hast und den Apachen mit sslunterstützung startest (rcapache2 startssl)


Viel Erfolg
 

Hallo!
Habe rcapache2 startssl aufgeführt, und das klappte (prefork). Allerdings läuft der Apache immernoch nicht. Könntest Du mir nochmal genauer sagen, wo man das mit den Dateirechten für den Apache-Start einstellen kann?

Ich muss zugeben, dass ich im Handbuch nicht fündig geworden bin. Ich finde, das ist für Anfänger ein ganz schön harter Brocken. Von den meisten Dingen dort verstehe ich nur Bahnhof.

Gruss Sputnik

Hallo Sputnik,

den Apachen zu beherschen bedarf einer Menge Wissen. Weiss, dass die Version bei SuSE 9.1 nicht so gut vorkonfiguriert ist wie bei 9.2 oder 9.3. Hier läuft PHP auf Anhieb.

Kanst dir auch zusätzlich zum Susie Apachen das Paket xampp installieren.

http://www.apachefriends.org/de/xampp-linux.html

Xampp ist fix und fertig konfiguriert und kommt mit grafischer Oberfläche. Sollte dir das Lernen erleichtern,



WARNUNG:
Xampp ist für die Entwicklung von Web-Anwendungen gedacht ohne sich mit der Konfiguration des Apachen rumschlagen zu müssen. Die Sicherheit ist extrem weich konfiguriert.

!!!Xampp ist nichts für den produktiven Einsatz und hat im www nichts verloren!!!

Hallo,

also ich keine Probleme mit 9.1

schau mal,in die httpd.conf nach der Server -Root
und welche Rechte hat dieses Verzeichnis?

normalerweise müßte Apache problemlos starten

die Geschichte mit ssl ist erstmal zweitrangig
erstmal muß der Apache laufen

Hallo Dr. Suse,
danke für den Tipp. Hatte auch schon über xampp nachgedacht. Kann ich mir allerdings bei mir nicht runterladen (modem). Ist halt nur blöd, dass ich ja eigentlich alle Komponenten habe, es aber nicht zum Laufen kriege.

Hallo Kersten,
leider verstehe ich nicht ganz, was ich machen soll. Ich habe in die httpd.config geschaut, finde aber nichts, dass sich nach server-root anhört. Für welches Verzeichnis soll ich die Rechte checken - etc/apache2?

Übrigens ist mir aufgefallen, dass beim booten von Suse ausgegeben wird, dass prefork gestartet ist (done). Wenn ich das in der Kommandozeile kontrolliere, dann steht da failed ??????

Gruss Sputnik


« Suse: 9.2 Professional.Suse: Grafik-Problem nach NVIDIA-Treiber-Installation »
 

Schnelle Hilfe: Hier nach ähnlichen Fragen und passenden Tipps suchen!

Fremdwörter? Erklärungen im Lexikon!
Auslagerungsdatei
Die Auslagerungsdatei, auch bekannt als virtueller Speicher, ist ein wichtiges Element im Windows-Betriebssystem. Sie dient als Erweiterung des physischen Arbeitsspeicher...

Dateiendungen
Die Dateiendung, auch Dateinamenerweiterung, Dateierweiterung oder einfach "Endung" genannt, besteht aus meistens drei oder vier Buchstaben und wird mit einem Punkt an de...

Dateisystem
Das Dateisystem eines Computers definiert, wie Daten auf einem Speichermedium organisiert werden. Es bestimmt dabei, wie die Informationen auf dem Medium gespeichert, gel...