10

I am new to the web mapping arena. I currently am managing a website and would like to add a mapping portion to it, mostly for some simple viewing and querying of a small number of layers.
For simplicity, I would like to use SQLite as the data store. I will use Quantum GIS or some such to load the spatial data into the SQLite database. Then ftp that onto the web site's directory structure.
I know that I will use OpenLayers to actually develop the map that is integrated into the web page.
I am thinking that FeatureServer would be appropriate to access the data from the SQLite database and convert it to a format that OpenLayers is able to consume. Is this correct and will it work? If so, how do I install this on a godaddy type server? If not, what would be appropriate software to use?
I would like to use Open Source software to accomplish this task.

Addtl Info - 2011/02/02 11:30AM PT To answer amercader - Yes, I can install software. I also have php and python installed, and can run CGI scrips.

To all - It seems that Django is similar to Featureserver, I guess. I seem to be stuck at where or how to go about installing these programs. I only know how to access the web site via ftp, I don't know how to access via command line. Part of my problem is not knowing the correct questions to ask to get the correct answers. - Perhaps the most direct question to ask is how do I install Featureserver on a shared hosting account like godaddy?

To underdark - a text file would be an easy solution, indeed. I would like to make this scalable for the longer term, as well as having to reduce conversion steps to get my data posted. In the future, I would potentially like to accept user input that will modify the spatial data being stored, thus making a text file a less desirable option.

Thanks all for input so far, it is appreciated.

2
  • Can you install software in your shared hosting? If not, which server languages do you have available (PHP, Python...)?
    – amercader
    Commented Feb 2, 2011 at 10:16
  • One consideration is the number and types of features that you want to serve. If your data consists of points or a relatively small number of lines/polygons, you can successfully serve them as vector features to OpenLayers. If you have thousands of features (or vertices in your features), your application won't perform due to browser limitations. You will then want to think about serving some/all of these features in an image format like WMS.
    – DavidF
    Commented Feb 2, 2011 at 15:50

5 Answers 5

4

You can use GeoDjango on a shared server at http://www.alwaysdata.com (just check the features list and the prices: http://www.alwaysdata.com/plans/shared )

enter image description here

They have VERY competitive prices and you can even test the env for free.

They do the PostGIS configuration on their side and the installation of geoDjango so that you don't have to configure anything.

Just create a free account, then drop them an email to ask for installation of PostGIS on your account (create a PostGres DB first and give them its name). Their support is quite fast even for free account.

I know this because I did it for myself and I have a fully PostGIS / Django GIS environment working with alwaysdata.com (I can even remotely connect to my PostGIS db with QGis ;)

4

Have you had a look at OpenLayer's "Dynamic POIs via a Text Layer" example? That should be even easier than an SQLite solution.


Update:

Geodjango doesn't seem to be an option on shared hosting. See GoDaddy Forum:

You can install and use Python and FastCGI on our Deluxe and Premium Linux shared hosting accounts. However, Django will not function on this type of account.

Also, it doesn't seem like you can install your own software on anything but their

Dedicated or Virtual Dedicated server where you will have the ability to do what you need to and configure Django to function.

1
  • Thank you for your comments. They helped me think about the correct questions to search for and answer. Commented Feb 3, 2011 at 9:54
2

I appreciate the input of everyone here. A number of the comments triggered thoughts and I figured out a solution. Many thanks to underdark for her comments, as they gave me some avenues to pursue.
I figured out how to install FeatureServer on a GoDaddy hosted website. Much credit goes to the FeatureServer Getting Started document.

From GoDaddy:

If your hosting account runs Hosting Configuration 2.0, server-side scripts and executables can be uploaded to any directory on your site and are not restricted to run only in the cgi directory. These scripts and executables are any files with the following extensions: .cgi, .pl, and .py.
If your hosting account does not run the new hosting configuration, all scripts and executables must reside in the cgi directory.

Using this info, I determined from the Getting Started document that I needed to add the following to my .htaccess file at the root of the website.

AddHandler cgi-script .cgi
Options +ExecCGI

I tried it in a different directory, but was having server errors, which I think was due to a conflict with the root .htaccess file.

I then extracted the full FeatureServer file which includes JSON, to my desired directory on my web server. I made the modification to the FeatureServer.cfg file as shown in the document, to specify where the temp file was going to be for the test file. Once I figured that out, and I got the path correct, I ran their test url, and it worked. Here is the link to see what the test will show if it is working correctly: FeatureServer test: GeoRSS site

I think that it is true there are many types of software that you cannot install on a shared hosting site on GoDaddy. Since FeatureServer is able to run as a CGI program, then I was able to make it work.
Now for getting some actual data up there and adding functionality. Thanks again, I'm sure I'll be back and hope I can return the favor.

1

Geodjango is an Option:

enter image description here

1

I've successfully installed FeatureServer on my shared host, dreamhost.com.

Installation was pretty simple, pretty much unextracting it to any directly that can execute CGI (like your cgi-bin). As a datastore, I decided to simply use python to pickle features to a file, which is working well for my purposes... storing POIs.

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

Once you're setup to pickle, you can actually use cURL to just RESTfully create features on your shared host.

If you have an entire dataset that you'd like to render using FeatureServer, I'm fairly certain you can use ogr2ogr to convert that dataset to geoJSON on your machine, then cURL that to FeatureServer.

I've got some basic notes from when I was tooling with FS on a shared host that may be of help: http://www.mkgeomatics.com/wordpress/?p=368

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.