Wie kann ich Daten in einer SQLite-Datenbank auf einem gemeinsam genutzten Webhost wie GoDaddy auf einer GIS-Webkarte bereitstellen?


9

Ich bin neu in der Web-Mapping-Arena. Ich verwalte derzeit eine Website und möchte einen Mapping-Teil hinzufügen, hauptsächlich zum einfachen Anzeigen und Abfragen einer kleinen Anzahl von Ebenen.
Der Einfachheit halber möchte ich SQLite als Datenspeicher verwenden. Ich werde Quantum GIS oder ähnliches verwenden, um die räumlichen Daten in die SQLite-Datenbank zu laden. Dann ftp das auf die Verzeichnisstruktur der Website.
Ich weiß, dass ich OpenLayers verwenden werde, um die in die Webseite integrierte Karte tatsächlich zu entwickeln.
Ich denke, dass FeatureServer geeignet wäre, auf die Daten aus der SQLite-Datenbank zuzugreifen und sie in ein Format zu konvertieren, das OpenLayers verwenden kann. Ist das richtig und wird es funktionieren? Wenn ja, wie installiere ich das auf einem Godaddy-Server? Wenn nicht, welche Software wäre geeignet?
Ich möchte Open Source-Software verwenden, um diese Aufgabe zu erfüllen.

Addtl Info - 2011/02/02 11:30 AM PT Um amercader zu beantworten - Ja, ich kann Software installieren. Ich habe auch PHP und Python installiert und kann CGI-Scrips ausführen.

An alle - Es scheint, dass Django Featureserver ähnlich ist, denke ich. Ich scheine nicht sicher zu sein, wo oder wie ich diese Programme installieren soll. Ich weiß nur, wie ich über FTP auf die Website zugreifen kann. Ich weiß nicht, wie ich über die Befehlszeile zugreifen soll. Ein Teil meines Problems besteht darin, nicht die richtigen Fragen zu kennen, um die richtigen Antworten zu erhalten. - Die vielleicht direkteste Frage ist, wie ich Featureserver auf einem gemeinsam genutzten Hosting-Konto wie godaddy installiere.

Unterdunkeln - eine Textdatei wäre in der Tat eine einfache Lösung. Ich möchte dies längerfristig skalierbar machen und die Konvertierungsschritte reduzieren, um meine Daten zu veröffentlichen. In Zukunft möchte ich möglicherweise Benutzereingaben akzeptieren, die die gespeicherten Geodaten ändern und somit eine Textdatei zu einer weniger wünschenswerten Option machen.

Vielen Dank für die bisherigen Beiträge, es wird geschätzt.


Können Sie Software in Ihrem Shared Hosting installieren? Wenn nicht, welche Serversprachen stehen Ihnen zur Verfügung (PHP, Python ...)?
Amercader

Eine Überlegung ist die Anzahl und Art der Funktionen, die Sie bereitstellen möchten. Wenn Ihre Daten aus Punkten oder einer relativ kleinen Anzahl von Linien / Polygonen bestehen, können Sie diese erfolgreich als Vektormerkmale für OpenLayers bereitstellen. Wenn Sie Tausende von Funktionen (oder Eckpunkte in Ihren Funktionen) haben, wird Ihre Anwendung aufgrund von Browsereinschränkungen nicht ausgeführt. Sie sollten dann darüber nachdenken, einige / alle dieser Funktionen in einem Bildformat wie WMS bereitzustellen.
DavidF

Antworten:


4

Sie können GeoDjango auf einem gemeinsam genutzten Server unter http://www.alwaysdata.com verwenden (überprüfen Sie einfach die Funktionsliste und die Preise: http://www.alwaysdata.com/plans/shared ).

Geben Sie hier die Bildbeschreibung ein

Sie haben sehr wettbewerbsfähige Preise und Sie können die Umgebung sogar kostenlos testen .

Sie führen die PostGIS-Konfiguration auf ihrer Seite und die Installation von geoDjango durch, sodass Sie nichts konfigurieren müssen.

Erstellen Sie einfach ein kostenloses Konto und senden Sie ihnen eine E-Mail, um nach der Installation von PostGIS in Ihrem Konto zu fragen (erstellen Sie zuerst eine PostGres-Datenbank und geben Sie ihnen ihren Namen). Ihre Unterstützung ist auch für kostenlose Konten recht schnell.

Ich weiß das, weil ich es für mich selbst getan habe und eine vollständige PostGIS / Django-GIS-Umgebung habe, die mit alwaysdata.com arbeitet (ich kann sogar mit QGis eine Remoteverbindung zu meiner PostGIS-Datenbank herstellen;)


4

Haben Sie sich das Beispiel "Dynamische POIs über eine Textebene" von OpenLayer angesehen ? Das sollte noch einfacher sein als eine SQLite-Lösung.


Aktualisieren:

Geodjango scheint keine Option für Shared Hosting zu sein. Siehe GoDaddy-Forum :

Sie können Python und FastCGI auf unseren gemeinsam genutzten Hosting-Konten Deluxe und Premium Linux installieren und verwenden. Django funktioniert jedoch nicht für diese Art von Konto.

Es scheint auch nicht so, als könnten Sie Ihre eigene Software auf etwas anderem als ihrer installieren

Dedizierter oder virtueller dedizierter Server , auf dem Sie die erforderlichen Funktionen ausführen und Django für die Funktion konfigurieren können.


Vielen Dank für Ihre Kommentare. Sie halfen mir, über die richtigen Fragen nachzudenken, um sie zu suchen und zu beantworten.
Holen Sie sich Spatial

2

Ich schätze den Beitrag aller hier. Einige der Kommentare lösten Gedanken aus und ich fand eine Lösung. Vielen Dank an underdark für ihre Kommentare, die mir einige Möglichkeiten gegeben haben, sie zu verfolgen.
Ich habe herausgefunden, wie FeatureServer auf einer von GoDaddy gehosteten Website installiert wird. Dem FeatureServer Getting Started- Dokument wird viel Anerkennung zuteil .

Von GoDaddy:

Wenn auf Ihrem Hosting-Konto Hosting Configuration 2.0 ausgeführt wird, können serverseitige Skripts und ausführbare Dateien in ein beliebiges Verzeichnis auf Ihrer Site hochgeladen werden und dürfen nicht nur im Verzeichnis cgi ausgeführt werden. Diese Skripte und ausführbaren Dateien sind alle Dateien mit den folgenden Erweiterungen: .cgi, .pl und .py.
Wenn in Ihrem Hosting-Konto die neue Hosting-Konfiguration nicht ausgeführt wird, müssen sich alle Skripts und ausführbaren Dateien im Verzeichnis cgi befinden.

Anhand dieser Informationen habe ich anhand des Dokuments "Erste Schritte" festgestellt, dass ich meiner .htaccess-Datei im Stammverzeichnis der Website Folgendes hinzufügen muss.

AddHandler cgi-script .cgi
Optionen + ExecCGI

Ich habe es in einem anderen Verzeichnis versucht, hatte aber Serverfehler, die meiner Meinung nach auf einen Konflikt mit der Stammdatei .htaccess zurückzuführen sind.

Anschließend habe ich die vollständige FeatureServer-Datei, die JSON enthält, in mein gewünschtes Verzeichnis auf meinem Webserver extrahiert. Ich habe die Änderung an der Datei FeatureServer.cfg wie im Dokument gezeigt vorgenommen, um anzugeben, wo sich die temporäre Datei für die Testdatei befinden soll. Nachdem ich das herausgefunden hatte und den richtigen Pfad gefunden hatte, führte ich die Test-URL aus und es funktionierte. Hier ist der Link, um zu sehen, was der Test anzeigt , wenn er ordnungsgemäß funktioniert: FeatureServer-Test: GeoRSS-Site

Ich denke, dass es wahr ist, dass es viele Arten von Software gibt, die Sie nicht auf einer gemeinsam genutzten Hosting-Site auf GoDaddy installieren können. Da FeatureServer als CGI-Programm ausgeführt werden kann, konnte ich es zum Laufen bringen.
Nun, um einige aktuelle Daten zu erhalten und Funktionen hinzuzufügen. Nochmals vielen Dank, ich bin sicher, ich komme wieder und hoffe, ich kann den Gefallen erwidern.



1

Ich habe FeatureServer erfolgreich auf meinem freigegebenen Host dreamhost.com installiert.

Die Installation war ziemlich einfach und zog sie so gut wie nicht direkt von jedem ab, der CGI ausführen kann (wie Ihr CGI-Bin). Als Datenspeicher habe ich mich entschieden, einfach Python zu verwenden, um Features in eine Datei aufzunehmen, was für meine Zwecke gut funktioniert ... das Speichern von POIs.

http://mkgeomatics.com/cgi-bin/featureserver/featureserver.cgi/android/all.georss

Sobald Sie zum Beizen eingerichtet sind, können Sie cURL verwenden , um Funktionen auf Ihrem freigegebenen Host REST-fähig zu erstellen.

Wenn Sie ein gesamtes Dataset haben, das Sie mit FeatureServer rendern möchten, können Sie dieses Dataset mit ogr2ogr auf Ihrem Computer in geoJSON konvertieren und dann in FeatureServer umwandeln.

Ich habe einige grundlegende Hinweise aus der Zeit, als ich mit FS auf einem gemeinsam genutzten Host gearbeitet habe, die möglicherweise hilfreich sind: http://www.mkgeomatics.com/wordpress/?p=368

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.