DNS Problem

T

termi

Grünschnabel
Hallo zusammen,

also ich weiß echt nicht mehr weiter...
hab schon sämtliche Handbücher durchforstet, leider ohne Erfolg.
mein Problem: mein Funktion fsockopen in einem PHP Script bekommt einen timeout.
Grund (meine Vermutung): beim umwandeln von Adresse -> IP bekommt Apache nen timeout (da DNS nicht funktioniert)
Weil: Wenn ich die IP manuell auflöse und ins Script schreibe funktioniert alles.

So jetzt das, meines erachtens, sehr seltsame: Wenn ich das PHP Script über die Kommandozeile aufrufe, also mit "php testscript.php" dann funktioniert alles. Also die Adresse konnte in eine IP umgewandelt werden...

meine Schlussfolgerung: Scheinbar gibt es verschiedene DNS Einstellungen für die jeweiligen User. Weil mit root klappt es und mit www (User von apache) nicht.

In der hosts Datei ist allerdings alles Standart.
Da ich den Server aber nicht selbst aufgesetzt habe weiß ich nicht genau wo alles was umgedreht worden ist. Daher kann es sein das einige Einstellungen nicht Standart sind.
Aber wie find ich die nur :(

Hatt einer noch eine Idee wo ich da noch suchen könnte?

Vielen Danke für die Hilfe,
termi
 
Poste mal die Ausgabe von

Code:
ls -al /etc/resolv.conf
 
Code:
PCBSD# ls -la resolv.conf
-r--r--r--  1 root  wheel  82 Mar  1 19:57 resolv.conf

also dazu noch folgendes:
Ich hatte zuerst das Problem das mir die resolv.conf immer überschrieben wurde mit (kurioserweiße) nicht aktiven Nameservern. Daher hab ich die Rechte einfach mal nur auf lesen gesetzt. Meine Vermutung war das dhclient die Config immer überschreibt (War Aber Schwachsinn da dhclient ja als root läuft +g+ -also das mit dem recht auf nur lesen-)
Ich hatte darauf die Einstellungen von dhclient gelöscht, bzw. geleert (Da hier wohl noch reststücke drin waren).
Nach restarten des dhclients wurde meine resolv.conf auch nicht mehr überschrieben.

Hab eben nen Versuch gemacht:
Code:
chmod 777 resolv.conf

allerdings schafft es Apache auch so nicht die Adresse umzuwandeln :\
 
Hmm,

das Einzige was mir jetzt noch einfallen würde, wäre das der Apache überhaupt nicht auf die resolv.conf zugreift, sondern auf eine apache-interne Konfiguration.....

Was ist denn die Ausgabe von:

Code:
grep -i "*dns*" httpd.conf

?
 
Hallo,
ich weiss ja nicht, ich weiss ja nicht. Bist Du Dir sicher, dass es sich um eine Rechtegeschichte handelt?
Geht Dein Script denn mit:
Code:
su root su www-data php /dein/script
Oder, wenn Du eh schon eine root Konsole offen hast nur:
Code:
su www-data php /dein/script
(Der Umweg über root nur, weil www-data ja meist kein Systempasswort hat. Wenn apache unter einem anderen User läuft, meine ich natürlich den ;-) )
lg, Clemente
 
Zuletzt bearbeitet:
Also
Code:
grep -i "*dns*" httpd.conf

bringt kein Ergebniss, hatte auch schon manuell mal in der httpd.conf nach irgendwelchen verdächtigen DNS einträgen geschaut... aber leider nichts zu finden.

Als www kann ich mich nich anmelden, ist ja auch nur nen User für Dienste. Oder komm ich da doch irgendwie rein?
 
Deshalb ja auch als root
Code:
su php /dein/script
root benötigt kein Kennwort, um einen Prozess im Kontext eines anderen Users zu starten. Und einen User für Deinen apache muß es geben, ansonsten könnte der apache ja nicht mit den Rechten eben dieses users laufen. ;-)
Clemente

P.S:
Sehe eben, dass ich im Forum für freeBSD gelandet bin. Ich hoffe, daß sich freeBSD da nicht anders als meine Linux Kisten verhält. Ansonsten bin ich nicht nur vorlaut, sondern auch noch daneben ;)
 
Zuletzt bearbeitet:
Code:
PCBSD# su www php /usr/local/www/data/fstest.php
This account is currently not available.
PCBSD#


Den User www gibts aber auf jeden Fall.
 
Hm. Das muss ich wohl recherchieren. Hilft jetzt vielleicht Dir nicht weiter, aber ich habe etwas dazu gelernt.
Sorry.
 

Ähnliche Themen

Samba 4.1.11 Domänen anbindung funktioniert nicht !!!

Debian squeeze, Webmin, Samba Freigaben

Samba PDC "DNS-Name nicht vorhanden" (Win7)

Problem mit Squid-Proxy Transparent + ASA 5505

web-cyradm: Anmeldung nicht möglich

Zurück
Oben