如何在共享Web主机(如GoDaddy)上的sqlite数据库中将数据提供到GIS Web地图上?


9

我是Web映射领域的新手。我目前正在管理一个网站,并想在其中添加一个映射部分,主要是为了一些少量层的简单查看和查询。
为了简单起见,我想使用SQLite作为数据存储。我将使用Quantum GIS或类似的工具将空间数据加载到SQLite数据库中。然后将其ftp到网站的目录结构中。
我知道我将使用OpenLayers实际开发集成到网页中的地图。
我认为FeatureServer适合访问SQLite数据库中的数据并将其转换为OpenLayers可以使用的格式。这是正确的,是否行得通?如果是这样,如何在Godaddy类型的服务器上安装它?如果没有,应该使用什么合适的软件?
我想使用开源软件来完成此任务。

Addtl Info-2011/02/02 11:30 PT回答amercader-是的,我可以安装软件。我还安装了php和python,并且可以运行CGI脚本。

所有人-我猜似乎Django与Featureserver类似。我似乎被困在哪里或如何去安装这些程序。我只知道如何通过ftp访问该网站,不知道如何通过命令行访问。我的部分问题是不知道要提出正确答案的正确问题。-可能要问的最直接的问题是如何在共享主机帐户(如godaddy)上安装Featureserver?

变暗了-文本文件确实是一个简单的解决方案。我想长期进行扩展,并且必须减少转换步骤才能发布数据。将来,我可能希望接受用户输入,这些输入将修改存储的空间数据,从而使文本文件成为不太理想的选择。

到目前为止,感谢大家的投入,不胜感激。


您可以在共享主机中安装软件吗?如果没有,您可以使用哪些服务器语言(PHP,Python ...)?
2011年

一个考虑因素是您要提供的功能的数量和类型。如果数据由点或相对较少的线/多边形组成,则可以成功地将它们用作OpenLayers的矢量要素。如果您具有数千个要素(或要素中的顶点),则由于浏览器的限制,您的应用程序将无法执行。然后,您将要考虑以诸如WMS之类的图像格式提供部分/全部功能。
DavidF 2011年

Answers:


4

您可以在http://www.alwaysdata.com的共享服务器上使用GeoDjango(只需检查功能列表和价格:http : //www.alwaysdata.com/plans/shared

在此处输入图片说明

他们的价格非常具有竞争力,您甚至可以免费测试环境

他们在自己进行PostGIS配置并安装geoDjango,因此您无需进行任何配置。

只需创建一个免费帐户,然后向他们发送电子邮件以要求在您的帐户上安装PostGIS(请先创建一个PostGres数据库并为其命名)。即使是免费帐户,他们的支持也非常快。

我之所以知道这一点,是因为我自己为自己做了,并且我拥有一个完全与Alwaysdata.com一起使用的PostGIS / Django GIS环境(我甚至可以使用QGis远程连接到我的PostGIS数据库;)


4

您是否看过OpenLayer的“通过文本层进行动态POI”示例?这应该比SQLite解决方案更容易。


更新:

Geodjango似乎不是共享主机上的选项。参见GoDaddy论坛

您可以在我们的Deluxe和Premium Linux共享主机帐户上安装和使用Python和FastCGI。但是,Django无法在这种类型的帐户上运行。

另外,除了他们自己的产品外,您似乎无法在其他任何产品上安装自己的软件

专用服务器或虚拟专用服务器,您可以在其中执行所需的操作并配置Django以使其正常运行。


谢谢您的意见。他们帮助我思考了要搜索和回答的正确问题。
获得空间

2

我感谢大家在这里的投入。许多评论引发了思想,我想出了一个解决方案。非常感谢Underdark的评论,因为他们给了我一些探索的途径。
我想出了如何在GoDaddy托管的网站上安装FeatureServer。许多功能归功于FeatureServer 入门文档。

从GoDaddy:

如果您的托管帐户运行Hosting Configuration 2.0,则可以将服务器端脚本和可执行文件上载到站点上的任何目录,而不仅限于在cgi目录中运行。这些脚本和可执行文件是带有以下扩展名的任何文件:.cgi,.pl和.py。
如果您的托管帐户未运行新的托管配置,则所有脚本和可执行文件都必须位于cgi目录中。

使用此信息,我从“入门”文档中确定了需要将以下内容添加到网站根目录的.htaccess文件中。

AddHandler cgi-script .cgi
选项+ ExecCGI

我在其他目录中尝试过,但是出现服务器错误,我认为这是由于与根.htaccess文件冲突所致。

然后,我将包含JSON的完整FeatureServer文件提取到Web服务器上所需的目录中。如文档所示,我对FeatureServer.cfg文件进行了修改,以指定临时文件将用于测试文件的位置。一旦弄清楚了,并且路径正确,我就运行了他们的测试URL,它就可以了。以下是查看测试正常运行时将显示什么的链接: FeatureServer测试:GeoRSS站点

我认为确实有很多类型的软件无法安装在GoDaddy的共享托管站点上。由于FeatureServer能够作为CGI程序运行,所以我能够使其工作。
现在获取一些实际数据并添加功能。再次感谢,我确定我会回来的,希望我能再回头。



1

我已经在共享主机dreamhost.com上成功安装了FeatureServer。

安装非常简单,几乎可以将其解压缩到任何可以直接执行CGI的地方(例如您的cgi-bin)。作为一个数据存储,我决定只使用python将功能腌制到文件中,这对我来说很好用...存储POI。

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

设置好泡菜后,您实际上可以使用cURL在共享主机上仅RESTful创建功能。

如果您具有要使用FeatureServer渲染的整个数据集,我可以肯定地说,可以使用ogr2ogr将数据集转换为计算机上的geoJSON,然后将其cURL转换为FeatureServer。

当我在共享主机上使用FS工具时,我得到了一些基本的注释,可能会有所帮助:http : //www.mkgeomatics.com/wordpress/?p=368

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.