Push-Nachrichten von MacTechNews.de
Würden Sie gerne aktuelle Nachrichten aus der Apple-Welt direkt über Push-Nachrichten erhalten?
Forum>Software>SQL zeigt immer die eigene IP

SQL zeigt immer die eigene IP

DarkLord541
DarkLord54116.04.0723:46
Hallöle.

Ich habe auf meinem OS X 10.4.9 Server SQL laufen und über den Web Server einige Gästebücher. Nun zeigt er da aber immer nur die interne IP des Servers an (Da wo stehen sollte unter welcher IP jemand was gepostet hat). Hat einer von euch vielleicht eine Ahnung wo ran das liegen kann?

Danke, Ben
„Nimm das Leben nicht zu ernst, du kommst da eh nicht lebend raus...“
0

Kommentare

MacSebi
MacSebi17.04.0711:22
an Deinem Gästebuchscript.
„German by nature - Kiwi by heart“
0
Liebling
Liebling17.04.0712:45
genau - falsch konfiguriert oder Script fehlerhaft
0
MacRabbitPro17.04.0713:29
Was ist eigentlich "SQL Server"??
Ich kenne nur den "Microsoft SQL Server" - der läuft aber nicht unter OS X.
Also welche Datenbank hast Du wirklich?
Und in welcher Sprache ist dein GB realisiert?
0
jogoto17.04.0713:35
MacRabbitPro

Er sprach nicht von "SQL Server" sondern dass er auf seinem "10.4.9 Server" SQL laufen hat und wenn er nichts selber daran rumgefrickelt hat ist das MySQL.
0
DarkLord541
DarkLord54117.04.0714:13
Richtig, ist der in OS X Server integrierte SQL Server. In dem Gästebuch hab ich als SQL Server "localhost" angegeben da es wenn ich meine Domain eingebe garnicht funktioniert. Obwohl der Benutzer von allem genau die gleichen Rechte hat wie der auf localhost. Bekomme dann nur die Fehlermeldung "Connection lost during Query"
„Nimm das Leben nicht zu ernst, du kommst da eh nicht lebend raus...“
0
MacRabbitPro17.04.0714:44
sorry - aber ich glaube nicht dass du wirklich weist was du tust oder willst. Ist jetzt nicht böse gemeint.

Aber du hast einmal die lokale SQL Datenbank - und einmal die Gästebuch Webanwendung. Nur die Webanwendung kann (über den HTTP Request) wissen welche externe IP gerade auf dein System zugreift.
Darüberhinaus hat die Webanwendung eine Verbindung zur lokalen SQL Datenbank. Diese erfolgt natürlich über die lokale IP Adresse des Servers.

Wo und vom wem erwartest Du denn dass die externe IP Adresse der Clients in deine Gästebuchdatenbank eingetragen wird? Vom MySQL Server? (und bitte nenne ihn nicht SQL Server - das ist ein Produktname von Microsoft und verwirrt nur)
Da kann nicht sein - MySQL weiss gar nicht dass auf deinen Rechner eine Webanwendung läuft. Das kann nur die Gästebuch Application tun.

Oder stehhe ich mir dein Szenario jetzt vollkommen falsch vor?

0
DarkLord541
DarkLord54117.04.0714:55
Also, hab mich wahrscheinlich etwas blöd ausgedrückt.

Auf meinen OS X Server läuft ein Webserver (mit mehreren Websites) und der eingebaute mySQL Server. Nun hab ich auf meiner Website ein Gästebuch mit drin. Wenn ich dort in der Config Datei die Server Domain: benjamins.homeunix.com eingebe kann er keine Verbindung zum Server mehr her stellen.

die Config Datei sieht so aus:

$host = "localhost"; // Your MySQL host

$username = "DarkLord541"; // Your MySQL username

$password = "***********"; // Your MySQL password

$database = "DarkLord541"; // Your MySQL database name

$table = "myphpgb"; // MySQl table prefix (freely selectable)

$url = "http://benjamins.homeunix.com/guestbook"; // URL to the guestbook directory

$version = "2.0.5";
„Nimm das Leben nicht zu ernst, du kommst da eh nicht lebend raus...“
0
DarkLord541
DarkLord54117.04.0714:58
Halt mein Hauptproblem ist das wenn ich die Domain selbst eintrage es nicht mehr funktioniert. (Dann müsste ja auch die IP die vom GB eingetragen wird stimmen oder seh ich des falsch)?
„Nimm das Leben nicht zu ernst, du kommst da eh nicht lebend raus...“
0
AndyB17.04.0715:13
Der Server kann wohl den DNS Namen benjamins.homeunix.com nicht auflösen, weil du wahrscheinlich keinen eigenen DNS in deinem Netz laufen hast und/oder der Name kein FQDN ist (wahrscheinlich beides).
Aber wozu brauchst du das auch, wenn Webserver und SQL Server auf einem Rechner laufen? Die IPs der Poster muss das Gästebuchscript ermitteln und in die Datenbank eintragen!
0
MacRabbitPro17.04.0715:29
Du hast doch extern (im Internet) sicher eine andere IP als Lokal (Router/Firewall dazwischen) - oder?
Insofern kann zum MySQL Server unter dem externen Domain-Namen (=Externe IP) gar keine Verbindung aufgebaut werden. Es sei denn du würdest den Port von MySQL ins Internet forwarden - aber das willst du sicher nicht wirklich.

Darüberhinaus: Die IP deiner Domain ist auch immer die gleiche - die hat auch nix mit der IP des Client zu tun der sich ins GB eintägt.

Nochmal: die externe Client IP kann nur von der Gästebuchanwendung kommen. Das hat nix mit der lokalen Webserver/MySQL Konfiguration zu tun.
0
julesdiangelo
julesdiangelo17.04.0715:33
Die MySQL Datenbank wird eigentlich immer, wenn sie auf dem gleichen Computer liegt, wie auch der Webserver als localhost angesprochen, denn localhost ist der Computer selbst bzw. in der hostconfig auf 127.0.0.1 gemapped.

Daher ist localhost in der config file vollkommen in Ordnung.

Wenn du da die url benjamins.homeunix.com eingeben willst, müsstest du die in der hosts ebenfalls auf 127.0.0.1 mappen, was aber so sinnvoll ist, wie kaffe mit kaltem Wasser kochen zu wollen.

Dein IP-Problem hat also einen anderen Hintergrund.
„bin paranoid, wer noch?“
0
julesdiangelo
julesdiangelo17.04.0715:35
Oder du müsstest externe Zugriffe auf die DB erlauben, was aber, wenn die db auf dem gleichen Computer liegt analog sinnvoll zu der Kaffegeschichte aus meinem vorherigen post ist.
„bin paranoid, wer noch?“
0
DarkLord541
DarkLord54117.04.0715:36
Also, hab keinen eigenen DNS ist auch keine richtige Domain nur eine von DynDNS. Der Benutzer hat von allen Hosts die Rechte. Habe ich schon gemacht und die Ports habe ich eigentlich auch schon auf den Server weiter geleitet. Könnte natürlich sein das ich da die Falschen habe. Bin mir da nicht sicher. Sitze auch gerade in der Berufsschule.

Das GB ist kein eigenes. weiß nciht ob da vielleicht was falsch ist.

Glaube hab gerade nen ziemlichen Denkfehler...
„Nimm das Leben nicht zu ernst, du kommst da eh nicht lebend raus...“
0
DarkLord541
DarkLord54117.04.0715:42
hmmm

allein schon wenn ich statt localhost "127.0.0.1" als host eintrage kommt die gleiche Fehlermeldung wie wenn ich den Hostnamen eintrage:

Database Error

#2013 - Lost connection to MySQL server during query

oO?
„Nimm das Leben nicht zu ernst, du kommst da eh nicht lebend raus...“
0
julesdiangelo
julesdiangelo17.04.0715:44
So sieht eine jungfräuliche hosts aus:

##
# Host Database
#
# localhost is used to configure the loopback interface
# when the system is booting. Do not change this entry.
##
127.0.0.1 localhost
255.255.255.255 broadcasthost
::1 localhost

Scheint als wäre da bei dir noch mehr krumm.
„bin paranoid, wer noch?“
0
DarkLord541
DarkLord54117.04.0715:57
Hmmm... muss ich glaube wenn ich wieder zuhause bin mal rein schauen.
„Nimm das Leben nicht zu ernst, du kommst da eh nicht lebend raus...“
0
GeWoldi17.04.0715:06
klappt die Namensauflösunf für deine Domain? Hat der Benutzer ($username = "DarkLord541"; // Your MySQL username) die Rechte um sich von deiner Domain aus au die DB ($database = "DarkLord541"; // Your MySQL database name) zu verbinden? Schau mal in der Rehteverwaltung von mysql nach... Gib dem Benutzer zum testen mal alle Rechte (bzw. von allen hosts)
0

Kommentieren

Diese Diskussion ist bereits mehr als 3 Monate alt und kann daher nicht mehr kommentiert werden.