<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
  <url>
    <loc>https://www.geospatialportal.org/</loc>
    <lastmod>2026-06-25T20:22:28.993Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>1.0</priority>
  </url>
  <url>
    <loc>https://www.geospatialportal.org/core-portal-architecture-security-boundaries/</loc>
    <lastmod>2026-06-25T23:02:15.743Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://www.geospatialportal.org/core-portal-architecture-security-boundaries/fallback-routing-strategies-for-tile-servers/</loc>
    <lastmod>2026-06-25T19:57:26.507Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  <url>
    <loc>https://www.geospatialportal.org/core-portal-architecture-security-boundaries/fallback-routing-strategies-for-tile-servers/configuring-stale-while-revalidate-tile-caching/</loc>
    <lastmod>2026-07-13T18:40:56.611Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  <url>
    <loc>https://www.geospatialportal.org/core-portal-architecture-security-boundaries/fallback-routing-strategies-for-tile-servers/setting-up-fallback-tile-routing-in-production/</loc>
    <lastmod>2026-06-25T19:54:27.990Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  <url>
    <loc>https://www.geospatialportal.org/core-portal-architecture-security-boundaries/geonode-vs-mapproxy-architecture-comparison/</loc>
    <lastmod>2026-06-25T23:02:08.924Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  <url>
    <loc>https://www.geospatialportal.org/core-portal-architecture-security-boundaries/geonode-vs-mapproxy-architecture-comparison/managing-cross-domain-cors-for-openlayers-clients/</loc>
    <lastmod>2026-06-25T20:00:14.347Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  <url>
    <loc>https://www.geospatialportal.org/core-portal-architecture-security-boundaries/geonode-vs-mapproxy-architecture-comparison/tuning-mapproxy-cache-seeding-for-large-extents/</loc>
    <lastmod>2026-07-13T19:01:06.279Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  <url>
    <loc>https://www.geospatialportal.org/core-portal-architecture-security-boundaries/implementing-rbac-for-multi-tenant-gis-portals/</loc>
    <lastmod>2026-06-25T23:02:10.342Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  <url>
    <loc>https://www.geospatialportal.org/core-portal-architecture-security-boundaries/implementing-rbac-for-multi-tenant-gis-portals/how-to-configure-geonode-user-roles-for-agency-teams/</loc>
    <lastmod>2026-06-25T20:01:37.948Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  <url>
    <loc>https://www.geospatialportal.org/core-portal-architecture-security-boundaries/keycloak-vs-dex-for-oidc-federation/</loc>
    <lastmod>2026-07-13T18:59:41.345Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  <url>
    <loc>https://www.geospatialportal.org/core-portal-architecture-security-boundaries/keycloak-vs-dex-for-oidc-federation/configuring-keycloak-realm-for-geonode-sso/</loc>
    <lastmod>2026-07-13T18:41:14.838Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  <url>
    <loc>https://www.geospatialportal.org/core-portal-architecture-security-boundaries/keycloak-vs-dex-for-oidc-federation/mapping-oidc-group-claims-to-geonode-roles/</loc>
    <lastmod>2026-07-13T18:42:31.152Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  <url>
    <loc>https://www.geospatialportal.org/core-portal-architecture-security-boundaries/security-boundary-mapping-for-ogc-services/</loc>
    <lastmod>2026-06-25T20:02:50.513Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  <url>
    <loc>https://www.geospatialportal.org/core-portal-architecture-security-boundaries/security-boundary-mapping-for-ogc-services/optimizing-postgresql-postgis-connection-limits/</loc>
    <lastmod>2026-06-25T23:02:41.590Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  <url>
    <loc>https://www.geospatialportal.org/core-portal-architecture-security-boundaries/security-boundary-mapping-for-ogc-services/rotating-geoserver-credentials-without-downtime/</loc>
    <lastmod>2026-07-13T18:39:38.735Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  <url>
    <loc>https://www.geospatialportal.org/core-portal-architecture-security-boundaries/security-boundary-mapping-for-ogc-services/securing-mapproxy-with-nginx-and-modsecurity/</loc>
    <lastmod>2026-06-25T23:02:46.590Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  <url>
    <loc>https://www.geospatialportal.org/infrastructure-orchestration-configuration-management/</loc>
    <lastmod>2026-07-13T18:41:50.657Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://www.geospatialportal.org/infrastructure-orchestration-configuration-management/containerizing-tileserver-gl-for-high-availability/</loc>
    <lastmod>2026-06-25T23:03:06.356Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  <url>
    <loc>https://www.geospatialportal.org/infrastructure-orchestration-configuration-management/containerizing-tileserver-gl-for-high-availability/building-a-minimal-tileserver-gl-docker-image/</loc>
    <lastmod>2026-07-13T18:40:56.980Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  <url>
    <loc>https://www.geospatialportal.org/infrastructure-orchestration-configuration-management/environment-parity-in-geospatial-ci-pipelines/</loc>
    <lastmod>2026-06-25T20:07:30.896Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  <url>
    <loc>https://www.geospatialportal.org/infrastructure-orchestration-configuration-management/environment-parity-in-geospatial-ci-pipelines/detecting-terraform-drift-in-geonode-infrastructure/</loc>
    <lastmod>2026-07-13T18:45:08.221Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  <url>
    <loc>https://www.geospatialportal.org/infrastructure-orchestration-configuration-management/environment-parity-in-geospatial-ci-pipelines/syncing-geonode-environments-with-terraform/</loc>
    <lastmod>2026-06-25T22:59:14.067Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  <url>
    <loc>https://www.geospatialportal.org/infrastructure-orchestration-configuration-management/helm-vs-kustomize-for-geonode-deployments/</loc>
    <lastmod>2026-07-13T18:59:44.837Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  <url>
    <loc>https://www.geospatialportal.org/infrastructure-orchestration-configuration-management/helm-vs-kustomize-for-geonode-deployments/writing-a-helm-values-overlay-for-geonode-staging/</loc>
    <lastmod>2026-07-13T18:59:49.848Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  <url>
    <loc>https://www.geospatialportal.org/infrastructure-orchestration-configuration-management/kubernetes-statefulsets-for-postgis-databases/</loc>
    <lastmod>2026-06-25T23:03:08.038Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  <url>
    <loc>https://www.geospatialportal.org/infrastructure-orchestration-configuration-management/kubernetes-statefulsets-for-postgis-databases/configuring-postgis-connection-pooling-with-pgbouncer/</loc>
    <lastmod>2026-07-13T18:42:19.638Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  <url>
    <loc>https://www.geospatialportal.org/infrastructure-orchestration-configuration-management/kubernetes-statefulsets-for-postgis-databases/deploying-postgis-on-kubernetes-with-persistent-volumes/</loc>
    <lastmod>2026-06-25T20:11:39.308Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  <url>
    <loc>https://www.geospatialportal.org/infrastructure-orchestration-configuration-management/mapproxy-vs-tileserver-gl-for-tile-delivery/</loc>
    <lastmod>2026-07-13T18:40:43.340Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  <url>
    <loc>https://www.geospatialportal.org/infrastructure-orchestration-configuration-management/mapproxy-vs-tileserver-gl-for-tile-delivery/benchmarking-tile-latency-with-k6/</loc>
    <lastmod>2026-07-13T18:42:09.783Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  <url>
    <loc>https://www.geospatialportal.org/infrastructure-orchestration-configuration-management/monitoring-and-observability-for-geospatial-portals/</loc>
    <lastmod>2026-07-13T18:59:56.834Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  <url>
    <loc>https://www.geospatialportal.org/infrastructure-orchestration-configuration-management/monitoring-and-observability-for-geospatial-portals/aggregating-celery-logs-with-loki/</loc>
    <lastmod>2026-07-13T18:59:51.850Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  <url>
    <loc>https://www.geospatialportal.org/infrastructure-orchestration-configuration-management/monitoring-and-observability-for-geospatial-portals/alerting-on-ogc-endpoint-sla-breaches/</loc>
    <lastmod>2026-07-13T18:59:55.343Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  <url>
    <loc>https://www.geospatialportal.org/infrastructure-orchestration-configuration-management/monitoring-and-observability-for-geospatial-portals/exporting-geoserver-metrics-to-prometheus/</loc>
    <lastmod>2026-07-13T18:43:00.599Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  <url>
    <loc>https://www.geospatialportal.org/infrastructure-orchestration-configuration-management/reverse-proxy-configuration-for-wmswfs/</loc>
    <lastmod>2026-06-25T20:12:37.588Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  <url>
    <loc>https://www.geospatialportal.org/infrastructure-orchestration-configuration-management/reverse-proxy-configuration-for-wmswfs/caching-getcapabilities-responses-at-the-edge/</loc>
    <lastmod>2026-07-13T18:43:43.894Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  <url>
    <loc>https://www.geospatialportal.org/infrastructure-orchestration-configuration-management/reverse-proxy-configuration-for-wmswfs/configuring-haproxy-for-wms-load-balancing/</loc>
    <lastmod>2026-06-25T20:11:14.704Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  <url>
    <loc>https://www.geospatialportal.org/metadata-catalog-automation-ingestion-workflows/</loc>
    <lastmod>2026-07-13T18:42:25.377Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://www.geospatialportal.org/metadata-catalog-automation-ingestion-workflows/automated-metadata-ingestion-via-oai-pmh/</loc>
    <lastmod>2026-06-25T20:13:46.265Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  <url>
    <loc>https://www.geospatialportal.org/metadata-catalog-automation-ingestion-workflows/automated-metadata-ingestion-via-oai-pmh/automating-oai-pmh-harvesting-for-government-portals/</loc>
    <lastmod>2026-06-25T20:14:37.696Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  <url>
    <loc>https://www.geospatialportal.org/metadata-catalog-automation-ingestion-workflows/csw-catalog-schema-mapping-validation/</loc>
    <lastmod>2026-06-25T20:17:02.281Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  <url>
    <loc>https://www.geospatialportal.org/metadata-catalog-automation-ingestion-workflows/csw-catalog-schema-mapping-validation/mapping-iso-19115-to-dublin-core-for-csw/</loc>
    <lastmod>2026-07-13T18:43:58.410Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  <url>
    <loc>https://www.geospatialportal.org/metadata-catalog-automation-ingestion-workflows/csw-catalog-schema-mapping-validation/validating-iso-19115-metadata-before-ingestion/</loc>
    <lastmod>2026-06-25T20:24:31.595Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  <url>
    <loc>https://www.geospatialportal.org/metadata-catalog-automation-ingestion-workflows/incremental-metadata-harvesting-and-change-detection/</loc>
    <lastmod>2026-07-13T18:42:02.544Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  <url>
    <loc>https://www.geospatialportal.org/metadata-catalog-automation-ingestion-workflows/incremental-metadata-harvesting-and-change-detection/implementing-oai-pmh-resumption-tokens/</loc>
    <lastmod>2026-07-13T18:43:20.682Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  <url>
    <loc>https://www.geospatialportal.org/metadata-catalog-automation-ingestion-workflows/scaling-celery-pipelines-for-bulk-ingestion/</loc>
    <lastmod>2026-07-13T18:42:23.864Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  <url>
    <loc>https://www.geospatialportal.org/metadata-catalog-automation-ingestion-workflows/scaling-celery-pipelines-for-bulk-ingestion/scaling-celery-workers-for-bulk-metadata-ingestion/</loc>
    <lastmod>2026-07-13T18:59:58.258Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  <url>
    <loc>https://www.geospatialportal.org/metadata-catalog-automation-ingestion-workflows/search-indexing-optimization-with-elasticsearch/</loc>
    <lastmod>2026-06-25T23:03:51.717Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  <url>
    <loc>https://www.geospatialportal.org/metadata-catalog-automation-ingestion-workflows/search-indexing-optimization-with-elasticsearch/configuring-elasticsearch-analyzers-for-place-names/</loc>
    <lastmod>2026-07-13T18:42:15.825Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  <url>
    <loc>https://www.geospatialportal.org/metadata-catalog-automation-ingestion-workflows/spatial-data-versioning-and-rollback-workflows/</loc>
    <lastmod>2026-07-13T18:42:35.895Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  <url>
    <loc>https://www.geospatialportal.org/metadata-catalog-automation-ingestion-workflows/spatial-data-versioning-and-rollback-workflows/rolling-back-a-bad-spatial-dataset-publish/</loc>
    <lastmod>2026-07-13T18:43:54.525Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  <url>
    <loc>https://www.geospatialportal.org/metadata-catalog-automation-ingestion-workflows/version-tagging-sync-for-spatial-datasets/</loc>
    <lastmod>2026-06-25T20:20:51.724Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
</urlset>
