diff --git a/src/features/flights-map/components/FlightsMapStartPage.tsx b/src/features/flights-map/components/FlightsMapStartPage.tsx index 7aeed86f..cb32012c 100644 --- a/src/features/flights-map/components/FlightsMapStartPage.tsx +++ b/src/features/flights-map/components/FlightsMapStartPage.tsx @@ -23,7 +23,6 @@ import { routesToPolylines, intermediateCityIds } from "../routesToPolylines.js" import { filterRoutes } from "../filterRoutes.js"; import { buildBuyTicketUrl, escapeHtml } from "../buyTicketUrl.js"; import { useDictionaries, getCityCodeByAirportCode } from "@/shared/dictionaries/index.js"; -import { getEnv } from "@/env/index.js"; import { getCityZoomLevel } from "../cityCategory.js"; import type { IFlightsMapFilterState, @@ -68,7 +67,6 @@ function addMonthsYyyymmdd(base: string, months: number): string { // --------------------------------------------------------------------------- export const FlightsMapStartPage: FC = () => { - const env = getEnv(); const { t } = useTranslation(); const routeParams = useParams<{ lang: string }>(); const lang = routeParams.lang ?? "ru"; @@ -268,8 +266,11 @@ export const FlightsMapStartPage: FC = () => { t, ]); - // Tile URL from env or default - const tileUrl = `${env.API_BASE_URL}/tiles/{z}/{x}/{y}.png`; + // Tile URL — same-origin path served by the reverse proxy upstream of the + // SSR app. Matches Angular's environment.mapApiUrl. Must NOT be prefixed + // with API_BASE_URL because tiles come from a different backend route + // than the JSON API, and the path is absolute at the origin. + const tileUrl = "/map/api/tile/{z}/{x}/{y}.jpeg"; return (