Trinity server status script auf webspace

02/03/2013 18:43 david141#1
Hey

ich habe meine website auf einen webspace geladen.

Aber der server status funktioniert jetzt nicht mehr, weil der server zuhause auf dem pc läuft und das script schaut, ob am webspace der port 8085 frei ist oder?
wie kann man das machen, dass das server status script den port 8085 vom pc zuhause überprüft?

hier ein script:

$ip = "IP";
$port = "8085";
if (! $sock = @fsockopen($ip, $port, $num, $error, 5))
echo '<B><FONT COLOR=red>Offline</b></FONT>';
else{
echo '<B><FONT COLOR=lime>Online</b></FONT>';
fclose($sock);
}

also am pc funktionierts aber am webspace net..

hoffe ihr könnt mir helfen

mfg david
02/04/2013 01:41 sinburn#2
Ja es liegt an deinem MySQL-Server der ist normalerweise nur für local eingerichtet, du must ihn also remotezugriff erlauben!!!

Damit der MySQL-Server mysqld TCP-Verbindungen annimmt, muss ihm in my.cnf im Abschnitt [mysqld] eine Bind-Adresse zugewiesen werden:
bind-address = <server-ip>
Falls vorhanden, muss die Direktive skip-networking gleichzeitig auskommentiert werden, da diese Priorität hat und forciert, dass der Server nur Unix Domain Sockets zulässt.
Per SQL einen neuen User anlegen und ihm den Remote-Zugriff von allen Hosts ('%') auf alle Schemata und Tabellen (*.*) erlauben:
Quote:
CREATE USER <user> IDENTIFIED BY '<password>'; GRANT ALL ON *.* TO '<user>'@'%';
Login mit mysql-Client:
Quote:
$ mysql -u <user> -h <host> --password=<password>
Die User-Zugriffsberechtigungen stehen in der Tabelle mysql.user. Diese Tabelle kann mit INSERT/UPDATE/DELETE Statements auch direkt manipuliert werden.



Hoffe es hat die geholfen...
02/04/2013 01:52 Kent_Brockman#3
Leider geben die meisten WebSpaces nicht die Möglichkeit die Config selbst zu ändern.
Dieses wir aber zu 90% benötigt um überhaupt von außen auf den DB-Server zu greifen zu können.

Solche WebSpace-Hoster erkennt man meist daran, daß man nur die Möglichkeit hat per PhPMyAdmin die Datenbanken zu manipulieren.

Die einzige (mir bekannte) Ausnahme ist, wenn man die WebSite auf "seinem" Root hosted.
02/04/2013 02:18 Mashkin#4
Quote:
Originally Posted by sinburn View Post
Ja es liegt an deinem MySQL-Server der ist normalerweise nur für local eingerichtet, du must ihn also remotezugriff erlauben!!!

Damit der MySQL-Server mysqld TCP-Verbindungen annimmt, muss ihm in my.cnf im Abschnitt [mysqld] eine Bind-Adresse zugewiesen werden:
bind-address = <server-ip>
Falls vorhanden, muss die Direktive skip-networking gleichzeitig auskommentiert werden, da diese Priorität hat und forciert, dass der Server nur Unix Domain Sockets zulässt.
Per SQL einen neuen User anlegen und ihm den Remote-Zugriff von allen Hosts ('%') auf alle Schemata und Tabellen (*.*) erlauben:

Login mit mysql-Client:

Die User-Zugriffsberechtigungen stehen in der Tabelle mysql.user. Diese Tabelle kann mit INSERT/UPDATE/DELETE Statements auch direkt manipuliert werden.



Hoffe es hat die geholfen...
Schön und gut... aber MySQL ist für dieses Statusscript überhaupt nicht nötig.

Für die Variable $ip muss die IP-Adresse bzw. der Hostname des Internetanschlusses eingetragen werden.
Für dynamische IP-Adressen (wie bei fast allen DSL-Anschlüssen) empfehle ich [Only registered and activated users can see links. Click Here To Register...] als Service, da DynDNS inzwischen wohl nicht mehr kostenlos ist.

Außerdem muss Port 8085 in deinem Router als Weiterleitung zu deinem PC konfiguriert werden. Wie das geht ist abhängig vom Router.
02/04/2013 04:17 sinburn#5
Quote:
Originally Posted by Mashkin View Post
Schön und gut... aber MySQL ist für dieses Statusscript überhaupt nicht nötig.

Für die Variable $ip muss die IP-Adresse bzw. der Hostname des Internetanschlusses eingetragen werden.
Für dynamische IP-Adressen (wie bei fast allen DSL-Anschlüssen) empfehle ich [Only registered and activated users can see links. Click Here To Register...] als Service, da DynDNS inzwischen wohl nicht mehr kostenlos ist.

Außerdem muss Port 8085 in deinem Router als Weiterleitung zu deinem PC konfiguriert werden. Wie das geht ist abhängig vom Router.
jo hast recht, bin da wohl zu schnell über sein fehler drüber geschweift ^^
muss denn wirklich ne port sache sein!!! das bedeutet denn aber auch zu gleich das im mom ausser ihm keiner auf dem server zocken kann :)

Freigabe des Ports 8085 erforderlich auf jeden fall :)
02/04/2013 10:29 Mashkin#6
Quote:
Originally Posted by sinburn View Post
jo hast recht, bin da wohl zu schnell über sein fehler drüber geschweift ^^
muss denn wirklich ne port sache sein!!! das bedeutet denn aber auch zu gleich das im mom ausser ihm keiner auf dem server zocken kann :)

Freigabe des Ports 8085 erforderlich auf jeden fall :)
Oder er macht seinen Server über *hust* Hamachi *hust* oder ein ähnliches VPN zugänglich. :o
02/04/2013 19:09 david141#7
Ne also ich hab nen root alles steht aber die Leute vom webhost sagen, dass externe Verbindungen geblockt werden (also ich kann eine url oder ip freigeben) das gilt auch für MySQL. Ich kann jetzt vom webspace net auf externe MySQL Datenbanken zugreifen, ich muss erst die ip oder URL freigeben. Also wenn ich die ip vom root (wo MySQL und der Server läuft) dort freigebe, müsste es gehen oder?

Und noch bei $ip ändern.
02/04/2013 21:13 Frosttall#8
Quote:
Originally Posted by david141 View Post
Ne also ich hab nen root alles steht aber die Leute vom webhost sagen, dass externe Verbindungen geblockt werden (also ich kann eine url oder ip freigeben) das gilt auch für MySQL. Ich kann jetzt vom webspace net auf externe MySQL Datenbanken zugreifen, ich muss erst die ip oder URL freigeben. Also wenn ich die ip vom root (wo MySQL und der Server läuft) dort freigebe, müsste es gehen oder?

Und noch bei $ip ändern.
Wenn du einen root hast, dann bist doch der Administrator und kannst das alles selbst einstellen - also von welchen Leuten redest du dann?
02/04/2013 22:08 Mashkin#9
Quote:
Originally Posted by Frosttall View Post
Wenn du einen root hast, dann bist doch der Administrator und kannst das alles selbst einstellen - also von welchen Leuten redest du dann?
Die vom Webspace-Hoster vermutlich? :O
02/04/2013 22:35 Frosttall#10
Quote:
Originally Posted by Mashkin View Post
Die vom Webspace-Hoster vermutlich? :O
Na Webspace oder Rootserver? Das sind zwei paar Stiefel.

Wenn du einen Rootserver gemietet hast, dann kannst du über diesen und seine Sicherheit frei verfügen.
02/05/2013 19:16 david141#11
Also das PHP Script liegt am webspace (world4you) und der Game-server liegt am root.

Und vom webspace muss auf eine externe ip (also die Server ip) zugegriffen werden, aber die erlauben das nur wenn man fragt. Also wenn ich vom webspace auf die Server ip zugreifen kann, müsste das Script funktionieren oder?
02/05/2013 21:36 Mashkin#12
Quote:
Originally Posted by david141 View Post
Also das PHP Script liegt am webspace (world4you) und der Game-server liegt am root.

Und vom webspace muss auf eine externe ip (also die Server ip) zugegriffen werden, aber die erlauben das nur wenn man fragt. Also wenn ich vom webspace auf die Server ip zugreifen kann, müsste das Script funktionieren oder?
Ja, wenn die Einschränkungen des Hosters wirklich die Ursache sind.
Aber da du die Vermutung ja wohl schon bestätigt hast, wird es wohl momentan nur am Hoster scheitern.
02/05/2013 22:36 Kent_Brockman#13
Pack doch das Script auf deinen Root und lass es von deiner HP anfahren.
Dann ist eigentlich das Problem gelöst.
02/07/2013 17:27 david141#14
Ja das Script funktioniert aber dann muss ich nur noch zb. Beim webhoster die ip "serverip:8085" freigeben oder? Weil wenn ich es jetzt auf dem webspace lade kommt immer nur "offline" weil die alle externen Verbindungen oder ips geblockt werden.