Laptop als Server mit Hardware-Tools und UI

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • Laptop als Server mit Hardware-Tools und UI

    Hallo zusammen,

    ich hätte für ein Projekt eine etwas umfangreichere Frage:

    Ich habe vorein einen Laptop als Server zu verwenden. Soweit ja nicht viel dabei: Platt machen und Server-OS aufspielen und konfigurieren.
    Jetzt der knackigere Teil:
    Auf den Server soll von einer Hardware (über USB und Internet möglich) auf die Datenbank zugegriffen werden können.
    Zudem brauche ich auch ein einfaches Userinterface. Mit diesem muss es möglich sein, wie von einem anderen PC über den Broswer auf den Server zuzugreifen.
    Der Server soll mit PHP und MySQL versehen sein und der Broswer muss mit den gängigen Sprachen zurecht kommen.

    Gibt es eine Möglichkeit, dies zu machen?
    Besonders wichtig ist aber auch, dass ohne weiteres nach fertiger Konfiguration über das UI NUR auf den Broswer auf den Server zugegriffen werden können soll. Direkter Zugang kann meinet wegen über nur Benutzernamen und Passwort geschützt sein.

    Also es soll sozusagen Server und Client in einem System stecken und gleichzeitig aber auch noch über das Internet von anderen Geräten auf den Server zugegriffen werden können.

    Könnt ihr mir eine Software nennen, mit welcher dieses möglich ist? Möglichst kostenfrei. Weißt nicht, ob das mit den Linux-Servern funktioniert, so tief bin ich in der Materie noch nicht.

    Das ganze hat keine Eile, aber wäre gut, wenn ich mich schon ein wenig informieren könnte.

    Danke schonmal

    LG

    Fipsi
  • Fipsi schrieb:

    Auf den Server soll von einer Hardware (über USB und Internet möglich) auf die Datenbank zugegriffen werden können.


    Was für eine Hardware soll auf welche Datenbank über welche Verbindung zugreifen?

    Vielleicht beschreibst du ein wenig den Dienst, den du betreiben möchtest, dann kann ich dir evtl. weiterhelfen.

    Client/Server... Ist eine Frage der Sichtweise.
    Lerne nicht Programmiersprachen, lerne Programmieren...

    :D Alles andere ist Syntax :D

    [Blockierte Grafik: http://www.xing.com/img/buttons/10_en_btn.gif]
  • Okay, sorry.

    Es ist eine Software für Bogensportturniere. Diese ist mit PHP, MySQL, HTML, CSS und JavaScript geschrieben. Diese kann ja auch normal auf einem localhost laufen.
    Jedoch entwickel ich dazu momentan auch Hardware, mit welcher die Ergebnisse einer jeden Scheibe automatisch eingetragen werden kann.
    (Ausführlicher: Auf Turnieren ist es momentan üblich, dass die Treffer auf sogenannte Schusszettel geschrieben, welche dann eingesammelt und deren Ergebnisse in den PC eingetragen werden. Die Hardware, die ich dazu entwickel, soll drei Spalten der MySQL-Datenbank je Teilnehmer auslesen und auch wieder überschreiben können. Dies soll über ein extra Programm der Hardware, welches ich schreiben werde ("Prozessing"), oder über das aufrufen einer URL, in welcher selbst - zum überschreiben - oder deren Antwort - zum auslesen - die Daten stehen.)

    Zudem soll aber auch, da ja das gesamte Programm auf diesem System läuft, möglich sein, eben über einen Broswer darauf zuzugreifen, da hier Teilnehmer- und Turnierdaten eingegeben und ausgelesen werden müssen.
    Ebenso möglich soll auch ein Zugriff von außen mögich sein, damit die Ergebnisse von mobilen Geräten aufgerufen werden können.

    Ich hoffe, das ist verständlich, was ich da geschrieben habe^^

    LG

    Fipsi
  • Fipsi schrieb:

    Ich hoffe, das ist verständlich, was ich da geschrieben habe^^


    Nein ^^

    Also, Hardware schreibt schon mal nicht in eine Datenbank.

    Du willst also auf deinem Notebook einen Webservice betreiben? Kein Problem, geht mit jedem beliebigen OS.

    Du willst den Webservice auf deinem Notebook von Extern erreichbar machen? Was ist für dich extern?
    Extern kann sein, andere Hosts im Netzwerk können darauf zugreifen, oder Hosts aus dem Internet/VPN?

    Die Datenbank extern verfügbar zu machen, ist nicht sinnvoll. Besser eine Schnittstelle bauen, die begrenzt Rechte auf der Datenbank bekommt, um Daten einzufügen, um die Zugriffe kontrollieren zu können.


    Vielleicht wäre es besser, wenn du ein Bild malst :) Manche können sich so besser ausdrücken, was sie vorhaben :D
    Lerne nicht Programmiersprachen, lerne Programmieren...

    :D Alles andere ist Syntax :D

    [Blockierte Grafik: http://www.xing.com/img/buttons/10_en_btn.gif]
  • Okay, dann muss ich whl noch ausführlicher werden^^.

    Zum Laptop:

    Dieser soll nur als Webserver für PHP und MySQL fungieren.
    Zusätzlich soll von diesem Laptop aber auch mittels eines Broswer möglich sein, auf diesen selbst zugreifen zu können, ebenso auf einen Router, in wessen Netzwerk man sich linken können soll (NUR lokales Netzwerk, keine Internetanbindung!). Also eben der Server und ein Broswer. Ansonsten soll man mit dem Laptop nichts machen können. Auch keinen direkten Zugriff auf die Datenbank, sondern nur über den Broswer über die PHP-Seiten.
    Wenn man sich dann angemeldet hat, soll man aber direkten Zugriff auf die Datenbank erhalten und auch die PHP-Dateien ändern können (oder als FTP-Zugriff, das wäre egal).

    Zur Hardware:

    Diese soll über eine USB- oder Serielle Schnittstelle mit Anbindung an ein noch nicht vorhandenes Programm ("Prozessing") die MySQl-Datenbank auslesen oder überschreiben können (also in diesem Rahmen muss eben nur das Programm auf dem Laptop installierbar sein).
    Zudem soll es möglich sein - was jetzt nicht viel mit dem OS aber zu tun haben wird - dass die Hardware mittels Ethernet an einen Router, an welchem der Laptop auch hängt, oder an den Laptop selbst angeschlossen wird und das Programm auf der Hardware eine URL aufruft, in welcher die Daten stehen, welche in die Datenbank eingetragen werden sollen, was dann eine PHp-Datei übernimmt. Beim auslesen so ähnlich, eine URL wird aufgerufen, PHP antwortet mit den entsprechenden Daten und das Programm der Hardware liest das aus.

    Zum externen Zugriff:

    Damit meinte ich, dass wenn sich der Laptop in einem wie schon oben genannten lokalen Netzwerk befindet, dann alle anderen Geräte, dich sich im selbigen befinden (Smartphones, Tablets, ect.), über deren Broswer Zugriff auf PHP-Seiten haben, welche die Datenbank auslesen (oder evtl. wird dafür noch eine App geschrieben, dann sollen beide Möglichkeiten offen stehen).

    Ich hoffe, jetzt ist das ganze ein wenig mehr verständlich^^

    LG

    Fipsi
  • Da das bearbeiten, warum auch immer, nicht funktioniert, halt ein Doppelpost:

    Und was mir gerade noch einfällt: alles möglichst abgespreckt, damit es kein High-End-Laptop sein muss und trotzdem viele Zugriffe zur gleichen Zeit möglich sein können.
    Und eine Prioritätseinstellung wäre dann auch nicht schlecht^^.

    LG

    Fipsi
  • Es ist nicht leicht dir zu folgen, dass muss man leider sagen :D

    Fangen wir mal mit deinem Notebook an:

    Hier kannst du ein Windows OS oder ein Unix OS verwenden, das ist im Prinzip Geschmackssache.
    Da du auf dem Notebook auch ein Browser verwenden möchtest, bleibt eine grafische Umgebung nicht aus (es sei denn, du kommst mit Komandozeilenbrowser zurecht.

    Da du auf diesem Gebiet noch keine großen Erfahrungen gesammelt hast, würde ich dir zwei Varianten empfehlen:
    1. Du Installierst dir ein Windows OS und verwendest z.B. die OutoftheBox Lösung XAMPP (apachefriends.org/de/index.html)
    2. Du schaust dir Ubuntu an, dort kannst du über den Paketmanager auch verschiedene Softwarekomponenten installieren, die du für den Betrieb deiner Webapplikation benötigst (Apache httpd, PHP, MySQL-Server etc).
    Wenn du aber auch gerne erst ein wenig ausprobieren möchtest, kannst du auch alles in einer Virtuellen Umgebung installieren. Da kann ich dir VirtualBox von Oracle empfehlen (virtualbox.org).

    Zugriff auf die PHP Dateien erhällst du ganz einfach auf dem Notebook: Über dein Dateisystem. Da brauchts kein FTP/SFTP/SCP.
    Direkten Zugriff auf die Datenbank erhällst du über den automatisch mitinstallieren mysql Client (Linux, SQL Kenntnisse vorrausgesetzt).



    Fipsi schrieb:

    Zur Hardware:

    Diese soll über eine USB- oder Serielle Schnittstelle mit Anbindung an ein noch nicht vorhandenes Programm ("Prozessing") die MySQl-Datenbank auslesen oder überschreiben können (also in diesem Rahmen muss eben nur das Programm auf dem Laptop installierbar sein).
    Zudem soll es möglich sein - was jetzt nicht viel mit dem OS aber zu tun haben wird - dass die Hardware mittels Ethernet an einen Router, an welchem der Laptop auch hängt, oder an den Laptop selbst angeschlossen wird und das Programm auf der Hardware eine URL aufruft, in welcher die Daten stehen, welche in die Datenbank eingetragen werden sollen, was dann eine PHp-Datei übernimmt. Beim auslesen so ähnlich, eine URL wird aufgerufen, PHP antwortet mit den entsprechenden Daten und das Programm der Hardware liest das aus.


    Ich kenne weder die von dir verwendete Hardware, noch die Applikation "Prozessing". Somit kann ich dir hier erst mal nicht weiterhelfen.

    Btw: Auch das Notebook ist "Hardware". So solltest du die Begriffe irgendwie konkreter beschreiben.

    Hardware mittels Ethernet?
    Meinst du damit, dass deine "Hardware" über Ethernet mit der Webapplikation sprechen muss? Wozu dann die USB/Serielle Schnittstelle?

    Hier lässt du im Prinzip deinen Webserver auch das Externe Interface deines Notebooks lauschen. Alles weitere ist abhängig vom verwendeten OS bzw. auch Router/Firewall/Infrastruktur.



    Fipsi schrieb:

    Zum externen Zugriff:


    Wie gesagt, solange der Webservice auf das externe Interface lauscht und die Infrastruktur passt, sollte das kein Problem sein.



    Fipsi schrieb:

    Und was mir gerade noch einfällt: alles möglichst abgespreckt, damit es kein High-End-Laptop sein muss und trotzdem viele Zugriffe zur gleichen Zeit möglich sein können.
    Und eine Prioritätseinstellung wäre dann auch nicht schlecht^^.


    Das bekommst du schon mit einem RasberryPi hin. Da brauchst keine große Hardware. Und ich glaube auch nicht, dass du 10.000 Requests in der Minute machst. Somit kein Problem.

    Was verstehst du unter Prioritätseinstellung?
    Lerne nicht Programmiersprachen, lerne Programmieren...

    :D Alles andere ist Syntax :D

    [Blockierte Grafik: http://www.xing.com/img/buttons/10_en_btn.gif]
  • Nebu schrieb:

    Es ist nicht leicht dir zu folgen, dass muss man leider sagen <img src="http://www.easy-coding.de/wcf/images/smilies/biggrin.png" alt=":D" />


    Das mach ich nicht mit Absicht, sorry.


    Nebu schrieb:


    Fangen wir mal mit deinem Notebook an:

    Hier kannst du ein Windows OS oder ein Unix OS verwenden, das ist im Prinzip Geschmackssache.
    Da du auf dem Notebook auch ein Browser verwenden möchtest, bleibt eine grafische Umgebung nicht aus (es sei denn, du kommst mit Komandozeilenbrowser zurecht.


    Linux OS wäre mit deutlich lieber, da die wohl deutlich stabiler und schneller laufen sollen (kein eigener Erfahrungswert, sondern was ich so gelesen und gehört habe).
    Einen Komandozeilenbroswer kann ich nicht berauchen, eine graphische Oberfälche wäre schon von Vorteil, da der Laptop mit der Hardware (also den Terminals) auch vermietet werden soll, deswegen auch nicht die direkten Zugriffe auf die Datenbank.

    Nebu schrieb:

    Da du auf diesem Gebiet noch keine großen Erfahrungen gesammelt hast


    Habe ich schon. Allerdings nur als Entwicklungsumgebung für PHP- und MySQl-Anwendungen.

    Nebu schrieb:


    1. Du Installierst dir ein Windows OS und verwendest z.B. die OutoftheBox Lösung XAMPP (apachefriends.org/de/index.html)
    2. Du schaust dir Ubuntu an, dort kannst du über den Paketmanager auch verschiedene Softwarekomponenten installieren, die du für den Betrieb deiner Webapplikation benötigst (Apache httpd, PHP, MySQL-Server etc).

    Wenn du aber auch gerne erst ein wenig ausprobieren möchtest, kannst du auch alles in einer Virtuellen Umgebung installieren. Da kann ich dir VirtualBox von Oracle empfehlen (virtualbox.org).

    Zugriff auf die PHP Dateien erhällst du ganz einfach auf dem Notebook: Über dein Dateisystem. Da brauchts kein FTP/SFTP/SCP.
    Direkten Zugriff auf die Datenbank erhällst du über den automatisch mitinstallieren mysql Client (Linux, SQL Kenntnisse vorrausgesetzt).


    1. möchte ich eben nicht machen. Es soll wirklich nur die Programme, die benötigt werden, verwendet werden und das so einfach gehalten werden, dass damit auch Laien später arbeiten können.
    2. Ubuntu hatte ich schon mal kurz als Destop-version installiert gehabt. Hatte mir gut gefallen. Da weiß ich aber eben nicht, und fehlt mir auch die Erfahrung, was diese Dinge angeht, ob das als Server dann genauso aussehen wird.

    Das mit der virtuellen Umgebung werde ich gerne ausprobieren, danke für die Empfehlung.

    Das mit dem Dateisystem ist dann eben wieder das Problem: kann ich das mit einem Passwort schützen? Wie schon erwähnt, soll das ganze auch vermietet werden können und da wär es schlecht, wenn dann jemand mit den Dateien spielt, ob Absichtlich oder aus Unwissenheit sei jetzt mal dahin gestellt.

    Okay, dass da gleich ein Client dabei ist, wusste ich jetzt nicht. SQL Kenntnisse hab ich.


    Nebu schrieb:


    Ich kenne weder die von dir verwendete Hardware, noch die Applikation "Prozessing". Somit kann ich dir hier erst mal nicht weiterhelfen.

    Btw: Auch das Notebook ist "Hardware". So solltest du die Begriffe irgendwie konkreter beschreiben.

    Hardware mittels Ethernet?
    Meinst du damit, dass deine "Hardware" über Ethernet mit der Webapplikation sprechen muss? Wozu dann die USB/Serielle Schnittstelle?

    Hier lässt du im Prinzip deinen Webserver auch das Externe Interface deines Notebooks lauschen. Alles weitere ist abhängig vom verwendeten OS bzw. auch Router/Firewall/Infrastruktur.


    Dir Hardware kannst du nicht kennen, da ich diese selbst baue ;)
    Die Hardware bau ich aus Einzelteilen eines Arduino-Boards (RasberryPI-ähnlich). Das sind Entwickler-boards der Elektrotechnik. Die Microprozessoren werden selbst programmiert, ebenso die Bauteile darum herum zusaamen gesetzt. Wenn nun ein Programm geschrieben wird, welches mit dem Microprozessor kommuniziert, nennt sich das bei diesem Board "Prozessing". Sorry, dass ich das ausgelassen habe.

    Der nächste Punkt soll Auswahlmöglichkeiten darstellen: Das ganze wird etwas für Turniere. Da sich die Turnierbereiche über größere Bereiche erstrecken können, und der Laptop nicht unbedingt in der Nähe des Steuergeräts meiner Terminals steht, soll es für größere Entfernungen möglich sein, über das Netzwerk zu kommunizieren und falls er in der Nähe sein sollte, über die Serielle Schnittstelle mit dem Prozessing-Programm. (Es wäre allerdings aber auch kein Weltuntergang, wenn nur die Serielle Schnittstelle und das Prozessing gehen würde.)


    Nebu schrieb:


    Das bekommst du schon mit einem RasberryPi hin. Da brauchst keine große Hardware. Und ich glaube auch nicht, dass du 10.000 Requests in der Minute machst. Somit kein Problem.


    Nein, eben nicht. Das es ein Laptop sein soll, hat den Grund, dass eben von diesem mit dem PHP-Programm gearbeitet werden können soll und das mit der Geschwindigkeit hat den Grund, dass die PHP-Anwendung nicht sehr klein ist und doch ein paar Zugriffe drauf kommen.

    Nebu schrieb:


    Was verstehst du unter Prioritätseinstellung?


    Falls der Laptop ein wenig schlapp machen sollte unter den Anfragen, dass er meine Hardware - also die Terminals - bevorzugt mit der Abfrage und sich erst danach um die anderen Anfragen kümmert.

    Hoffe, ich hab jetzt nichts vergessen.

    LG

    Fipsi