Làm cách nào để phân phát dữ liệu trong cơ sở dữ liệu sqlite trên máy chủ web được chia sẻ, như GoDaddy, trên bản đồ web GIS?


9

Tôi mới tham gia vào lĩnh vực lập bản đồ web. Tôi hiện đang quản lý một trang web và muốn thêm một phần ánh xạ vào nó, chủ yếu là để xem và truy vấn đơn giản một số lượng nhỏ các lớp.
Để đơn giản, tôi muốn sử dụng SQLite làm kho lưu trữ dữ liệu. Tôi sẽ sử dụng Quantum GIS hoặc một số thứ như vậy để tải dữ liệu không gian vào cơ sở dữ liệu SQLite. Sau đó ftp vào cấu trúc thư mục của trang web.
Tôi biết rằng tôi sẽ sử dụng OpenLayers để thực sự phát triển bản đồ được tích hợp vào trang web.
Tôi nghĩ rằng FeatureServer sẽ thích hợp để truy cập dữ liệu từ cơ sở dữ liệu SQLite và chuyển đổi nó thành định dạng mà OpenLayers có thể sử dụng. Điều này có đúng không và nó có hoạt động không? Nếu vậy, làm thế nào để tôi cài đặt cái này trên một máy chủ kiểu godaddy? Nếu không, phần mềm thích hợp sẽ sử dụng là gì?
Tôi muốn sử dụng phần mềm Nguồn mở để hoàn thành nhiệm vụ này.

Thông tin Addtl - 2011/02/02 11:30 AM PT Để trả lời amercader - Có, tôi có thể cài đặt phần mềm. Tôi cũng đã cài đặt php và python và có thể chạy các đoạn mã CGI.

Đối với tất cả - Có vẻ như Django tương tự như Featureerver, tôi đoán vậy. Tôi dường như bị mắc kẹt ở đâu hoặc làm thế nào để cài đặt các chương trình này. Tôi chỉ biết cách truy cập trang web qua ftp, tôi không biết cách truy cập qua dòng lệnh. Một phần của vấn đề của tôi là không biết các câu hỏi chính xác để hỏi để có câu trả lời đúng. - Có lẽ câu hỏi trực tiếp nhất để hỏi là làm cách nào để cài đặt Máy chủ tính năng trên tài khoản lưu trữ được chia sẻ như godaddy?

Thực tế, một tập tin văn bản sẽ là một giải pháp dễ dàng. Tôi muốn làm cho khả năng mở rộng này lâu dài hơn, cũng như phải giảm các bước chuyển đổi để có được dữ liệu của tôi được đăng. Trong tương lai, tôi có khả năng muốn chấp nhận đầu vào của người dùng sẽ sửa đổi dữ liệu không gian đang được lưu trữ, do đó làm cho tệp văn bản trở thành một tùy chọn ít mong muốn hơn.

Cảm ơn tất cả cho đầu vào cho đến nay, nó được đánh giá cao.


Bạn có thể cài đặt phần mềm trong lưu trữ chia sẻ của bạn? Nếu không, ngôn ngữ máy chủ nào bạn có sẵn (PHP, Python ...)?
amercader

Một xem xét là số lượng và loại tính năng mà bạn muốn phục vụ. Nếu dữ liệu của bạn bao gồm các điểm hoặc một số lượng dòng / đa giác tương đối nhỏ, bạn có thể phục vụ thành công chúng dưới dạng các tính năng vectơ cho OpenLayers. Nếu bạn có hàng ngàn tính năng (hoặc đỉnh trong các tính năng của mình), ứng dụng của bạn sẽ không hoạt động do giới hạn trình duyệt. Sau đó, bạn sẽ muốn nghĩ về việc phục vụ một số / tất cả các tính năng này ở định dạng hình ảnh như WMS.
DavidF

Câu trả lời:


4

Bạn có thể sử dụng GeoDjango trên máy chủ được chia sẻ tại http://www.alwaysdata.com (chỉ cần kiểm tra danh sách tính năng và giá cả: http://www.alwaysdata.com/plans/ Shared )

nhập mô tả hình ảnh ở đây

Họ có giá RẤT cạnh tranh và thậm chí bạn có thể kiểm tra env miễn phí .

Họ thực hiện cấu hình PostGIS về phía họ và cài đặt GeoDjango để bạn không phải định cấu hình bất cứ điều gì.

Chỉ cần tạo một tài khoản miễn phí, sau đó gửi email cho họ để yêu cầu cài đặt PostGIS trên tài khoản của bạn (trước tiên hãy tạo DB PostGres và đặt tên cho họ). Hỗ trợ của họ khá nhanh ngay cả đối với tài khoản miễn phí.

Tôi biết điều này bởi vì tôi đã làm điều đó cho chính mình và tôi có một môi trường GIS PostGIS / Django hoàn toàn hoạt động với alwaysdata.com (tôi thậm chí có thể kết nối từ xa với db PostGIS của mình với QGis;)


4

Bạn đã xem qua ví dụ "Dynamic POI qua lớp văn bản" của OpenLay chưa? Điều đó thậm chí còn dễ dàng hơn một giải pháp SQLite.


Cập nhật:

Geodjango dường như không phải là một lựa chọn trên lưu trữ được chia sẻ. Xem Diễn đàn GoDaddy :

Bạn có thể cài đặt và sử dụng Python và FastCGI trên các tài khoản lưu trữ chia sẻ Deluxe và Premium Linux của chúng tôi. Tuy nhiên, Django sẽ không hoạt động trên loại tài khoản này.

Ngoài ra, có vẻ như bạn không thể cài đặt phần mềm của riêng mình vào bất cứ thứ gì ngoại trừ

Máy chủ chuyên dụng hoặc ảo Chuyên dụng nơi bạn sẽ có khả năng làm những gì bạn cần và cấu hình Django để hoạt động.


Cảm ơn bạn đã bình luận của bạn. Họ đã giúp tôi suy nghĩ về các câu hỏi chính xác để tìm kiếm và trả lời.
Nhận không gian

2

Tôi đánh giá cao đầu vào của tất cả mọi người ở đây. Một số ý kiến ​​kích hoạt suy nghĩ và tôi đã tìm ra một giải pháp. Rất cám ơn đến Underdark để lấy ý kiến của mình, vì họ đã cho tôi một số con đường để theo đuổi.
Tôi đã tìm ra cách cài đặt FeatureServer trên trang web được lưu trữ trên GoDaddy. Phần lớn tín dụng được chuyển đến tài liệu FeatureServer Bắt đầu .

Từ GoDaddy:

Nếu tài khoản lưu trữ của bạn chạy Cấu hình lưu trữ 2.0, các tập lệnh và tệp thực thi phía máy chủ có thể được tải lên bất kỳ thư mục nào trên trang web của bạn và không bị hạn chế chỉ chạy trong thư mục cgi. Các tập lệnh và tệp thực thi này là bất kỳ tệp nào có phần mở rộng sau: .cgi, .pl và .py.
Nếu tài khoản lưu trữ của bạn không chạy cấu hình lưu trữ mới, tất cả các tập lệnh và tệp thực thi phải nằm trong thư mục cgi.

Sử dụng thông tin này, tôi xác định từ tài liệu Bắt đầu rằng tôi cần thêm phần sau vào tệp .htaccess của tôi ở thư mục gốc của trang web.

AddHandler cgi-script .cgi
Tùy chọn + ExecCGI

Tôi đã thử nó trong một thư mục khác, nhưng gặp lỗi máy chủ, mà tôi nghĩ là do xung đột với tệp .htaccess gốc.

Sau đó tôi đã trích xuất tệp FeatureServer đầy đủ bao gồm JSON, vào thư mục mong muốn của tôi trên máy chủ web của mình. Tôi đã thực hiện sửa đổi tệp FeatureServer.cfg như được hiển thị trong tài liệu, để chỉ định nơi tệp tạm thời sẽ dành cho tệp thử nghiệm. Khi tôi nhận ra điều đó và tôi đã hiểu đúng đường dẫn, tôi đã chạy url kiểm tra của họ và nó đã hoạt động. Đây là liên kết để xem thử nghiệm sẽ hiển thị nếu nó hoạt động chính xác: Kiểm tra FeatureServer: trang web GeoRSS

Tôi nghĩ rằng đúng là có nhiều loại phần mềm mà bạn không thể cài đặt trên một trang web lưu trữ được chia sẻ trên GoDaddy. Vì FeatureServer có thể chạy như một chương trình CGI, nên tôi đã có thể làm cho nó hoạt động.
Bây giờ để có được một số dữ liệu thực tế trên đó và thêm chức năng. Cảm ơn một lần nữa, tôi chắc chắn tôi sẽ trở lại và hy vọng tôi có thể trả lại sự giúp đỡ.



1

Tôi đã cài đặt thành công FeatureServer trên máy chủ chia sẻ của mình, dreamhost.com.

Việc cài đặt khá đơn giản, khá nhiều điều không thể thu hút nó vào bất kỳ trực tiếp nào có thể thực thi CGI (như cgi-bin của bạn). Là một kho dữ liệu, tôi quyết định chỉ cần sử dụng python để chọn các tính năng cho một tệp, hoạt động tốt cho mục đích của tôi ... lưu trữ POI.

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

Khi bạn đã thiết lập để chọn, bạn thực sự có thể sử dụng cURL để chỉ RESTly tạo các tính năng trên máy chủ được chia sẻ của bạn.

Nếu bạn có toàn bộ tập dữ liệu mà bạn muốn kết xuất bằng FeatureServer, tôi khá chắc chắn rằng bạn có thể sử dụng ogr2ogr để chuyển đổi tập dữ liệu đó thành GeoJSON trên máy của bạn, sau đó xác nhận nó thành FeatureServer.

Tôi đã nhận được một số lưu ý cơ bản từ khi tôi làm công cụ với FS trên một máy chủ được chia sẻ có thể giúp ích: http://www.mkgeomatics.com/wordpress/?p=368

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.