Tôi nghĩ rằng tôi có một cấu hình sai trong máy chủ bản đồ của mình đang ngăn không cho nó phục vụ hình ảnh.
Trong tệp bản đồ của tôi, tôi có phần này:
PROJECTION
"init=epsg:4326"
END
Nếu tôi để phần đó vào, tôi sẽ gặp lỗi này khi gọi GetMap
hoặc thậm chí GetCapabilities
:
msProcessProjection(): Projection library error. no system list, errno: 2
Nếu tôi loại bỏ phần đó (không mong muốn), sẽ GetCapabilities
hoạt động, nhưng GetMap
đưa ra lỗi này:
<ServiceExceptionReport version="1.1.1">
<ServiceException code="InvalidSRS">msWMSLoadGetMapParams(): WMS server error. Cannot set new SRS on a map that doesn't have any projection set. Please make sure your mapfile has a projection defined at the top level.</ServiceException>
</ServiceExceptionReport>
Đó là dự kiến bởi vì tôi chỉ cần loại bỏ phần.
Vì vậy, câu hỏi của tôi là làm thế nào để tôi gỡ lỗi : msProcessProjection(): Projection library error. no system list, errno: 2
?
Tìm kiếm trực tuyến, tôi thấy các bình luận liên quan đến quyền, nhưng apache (người dùng đang chạy httpd) có thể truy cập các thư mục sau được xác định trong httpd.conf của tôi:
SetEnv LD_LIBRARY_PATH /some/place/lib/
SetEnv PROJ_LIB /some/place/share/proj/
SetEnv GDAL_DATA /some/place/share/gdal/
SetEnv LC_NUMBERIC C
SetEnv GEOTIFF_CSV /some/place/share/gdal/
SetEnv LANG=C
Trong /some/place/share/proj
đó, có một tập tin epsg
đúng như tôi mong đợi.
Tôi không nhận được lỗi từ apache.