[Improve] download link issue fixed (#436)

diff --git a/src/pages/download/data.json b/src/pages/download/data.json
index 920e27e..f371316 100644
--- a/src/pages/download/data.json
+++ b/src/pages/download/data.json
@@ -1,34 +1,42 @@
 [
   {
     "version": "2.1.6",
-    "date": "2025-07-09"
+    "date": "2025-07-09",
+    "tlp": true
   },
   {
     "version": "2.1.5",
-    "date": "2024-10-18"
+    "date": "2024-10-18",
+    "tlp": false
   },
   {
     "version": "2.1.4",
-    "date": "2024-05-14"
+    "date": "2024-05-14",
+    "tlp": false
   },
   {
     "version": "2.1.3",
-    "date": "2024-03-19"
+    "date": "2024-03-19",
+    "tlp": false
   },
   {
     "version": "2.1.2",
-    "date": "2023-12-11"
+    "date": "2023-12-11",
+    "tlp": false
   },
   {
     "version": "2.1.1",
-    "date": "2023-06-30"
+    "date": "2023-06-30",
+    "tlp": false
   },
   {
     "version": "2.1.0",
-    "date": "2023-05-11"
+    "date": "2023-05-11",
+    "tlp": false
   },
   {
     "version": "2.0.0",
-    "date": "2023-02-21"
+    "date": "2023-02-21",
+    "tlp": false
   }
 ]
diff --git a/src/pages/download/index.jsx b/src/pages/download/index.jsx
index f3936e9..becce6a 100644
--- a/src/pages/download/index.jsx
+++ b/src/pages/download/index.jsx
@@ -47,7 +47,7 @@
         <p>
            <span>
               {dataSource.downloadText} <a
-               href="https://downloads.apache.org/incubator/streampark/KEYS">PGP KEYS </a> {dataSource.verifyDesc1} :
+               href="https://downloads.apache.org/streampark/KEYS">PGP KEYS </a> {dataSource.verifyDesc1} :
           </span>
 
           <li> {dataSource.verifyStep1} </li>
diff --git a/src/pages/download/table.jsx b/src/pages/download/table.jsx
index d1b936c..2483571 100644
--- a/src/pages/download/table.jsx
+++ b/src/pages/download/table.jsx
@@ -9,78 +9,80 @@
   const tableData = props.dataSource || []
   const latest = props.latest || false
 
-  const dynURL = 'https://www.apache.org/dyn/closer.lua/incubator/streampark/';
-  const archiveURL = 'https://archive.apache.org/dist/incubator/streampark/';
-  const downloadURL = 'https://downloads.apache.org/incubator/streampark/'
+  const dynURL = 'https://www.apache.org/dyn/closer.lua/streampark/';
+  const archiveIncubatorURL = 'https://archive.apache.org/dist/incubator/streampark/';
+  const archiveTLPURL = 'https://archive.apache.org/dist/streampark/';
+  const downloadIncubatorURL = 'https://downloads.apache.org/incubator/streampark/'
+  const downloadTLPURL = 'https://downloads.apache.org/streampark/'
   const releaseNoteUrl = 'https://streampark.apache.org/download/release-note/'
 
-  function getSourceLink(version) {
-    const prefix = latest ? dynURL : archiveURL
+  function getSourceLink(version, tlp) {
+    const prefix = latest ? dynURL : (tlp ? archiveTLPURL: archiveIncubatorURL);
     return prefix
         .concat(version)
         .concat('/apache-streampark-')
         .concat(version)
-        .concat('-incubating-src.tar.gz')
+        .concat(tlp ? '-src.tar.gz.asc' : '-incubating-src.tar.gz')
         .concat('?action=download')
   }
 
-  function getBinaryLink(scala, version) {
-    const prefix = latest ? dynURL : archiveURL;
+  function getBinaryLink(scala, tlp, version) {
+    const prefix = latest ? dynURL : (tlp ? archiveTLPURL: archiveIncubatorURL);
     return prefix
         .concat(version)
         .concat('/apache-streampark_')
         .concat(scala)
         .concat('-')
         .concat(version)
-        .concat('-incubating-bin.tar.gz')
+        .concat(tlp ? '-bin.tar.gz' : '-incubating-bin.tar.gz')
         .concat('?action=download')
   }
 
-  function getSourceSigs(version, suffix) {
-    const prefix = latest ? downloadURL : archiveURL;
+  function getSourceSigs(version, tlp, suffix) {
+    const prefix = latest ? (tlp ? downloadTLPURL: downloadIncubatorURL) : (tlp ? archiveTLPURL: archiveIncubatorURL);
     return prefix.concat(version)
         .concat('/apache-streampark-')
         .concat(version)
-        .concat('-incubating-src.tar.gz')
+        .concat(tlp ? '-src.tar.gz' : '-incubating-src.tar.gz')
         .concat(suffix)
   }
 
-  function getBinarySigs(scala, version, suffix) {
-    const prefix = latest ? downloadURL : archiveURL;
+  function getBinarySigs(scala, tlp, version, suffix) {
+    const prefix = latest ? (tlp ? downloadTLPURL: downloadIncubatorURL) : (tlp ? archiveTLPURL: archiveIncubatorURL);
     return prefix
         .concat(version)
         .concat('/apache-streampark_')
         .concat(scala)
         .concat('-')
         .concat(version)
-        .concat('-incubating-bin.tar.gz')
+        .concat(tlp ? '-bin.tar.gz' : '-incubating-bin.tar.gz')
         .concat(suffix)
   }
 
   const releaseData = tableData.map((release) => {
     return genRelease(release, latest)
   })
-  function genRelease({ version, date }, latest) {
+  function genRelease({ version, date, tlp }, latest) {
     return {
       latest: latest,
       version: version,
       date: date,
       releaseNotesUrl: `${releaseNoteUrl}${version}`,
       source: {
-        url: getSourceLink(version),
-        signature: getSourceSigs(version, '.asc'),
-        sha512: getSourceSigs(version, '.sha512')
+        url: getSourceLink(version, tlp),
+        signature: getSourceSigs(version, tlp, '.asc'),
+        sha512: getSourceSigs(version, tlp,'.sha512')
       },
       binary: [{
         name: 'apache-streampark_2.12-' + version + '-bin.tar.gz',
-        url: getBinaryLink('2.12', version),
-        signature: getBinarySigs('2.12', version, '.asc'),
-        sha512: getBinarySigs('2.12', version, '.sha512')
+        url: getBinaryLink('2.12', tlp, version),
+        signature: getBinarySigs('2.12', tlp, version, '.asc'),
+        sha512: getBinarySigs('2.12', tlp, version, '.sha512')
       }, {
         name: 'apache-streampark_2.11-' + version + '-bin.tar.gz',
-        url: getBinaryLink('2.11', version),
-        signature: getBinarySigs('2.11', version, '.asc'),
-        sha512: getBinarySigs('2.11', version, '.sha512')
+        url: getBinaryLink('2.11', tlp, version),
+        signature: getBinarySigs('2.11', tlp, version, '.asc'),
+        sha512: getBinarySigs('2.11', tlp, version, '.sha512')
       }]
     }
   }