Repository: nodejs/nodejs.dev (ts)

Issue:
Broken Link
### URL:

https://nodejs.dev/en/

### Browser Name:

Chrome

### Browser Version:

103.0.5060.134

### Operating System:

Windows 10, 21 H2, 19044.1826

### How to reproduce the issue:

When we click on Learn, it takes us to this Introduction to Node.js webpage
![image](https://user-images.githubusercontent.com/95405559/193509668-62efc268-0ec9-4e87-a9f2-e340d7754b4c.png)

But, when I try to open this page from the left hand side navbar, it has a broken link. Maybe the URL linked is wrong.
![image](https://user-images.githubusercontent.com/95405559/193509834-b206dfc0-7bd4-44fe-acf6-c5252d9853eb.png)

If possible, I would like to take up this issue as a part of Hacktoberfest.



Pull request:
Fix Broken Link in learn page
<!--
Please read the [Code of Conduct](https://github.com/nodejs/nodejs.dev/blob/main/CODE_OF_CONDUCT.md) and the [Contributing Guidelines](https://github.com/nodejs/nodejs.dev/blob/main/CONTRIBUTING.md) before opening a pull request.
-->

## Description

Fix the broken link in learn page

## Related Issues

Fix #2853 


### Check List

<!--
ATTENTION
Please follow this check list to ensure that you've followed all items before opening this PR
-->

- [ ✅] I have read the [Contributing Guidelines](https://github.com/nodejs/nodejs.dev/blob/main/CONTRIBUTING.md) and made commit messages that follow the guideline.
- [ ✅] I have run `npm run lint:js -- --fix` and/or `npm run lint:md -- --fix` for my JavaScript and/or Markdown changes.
  - This is important as most of the cases your code changes might not be correctly linted
- [✅ ] I have run `npm run test` to check if all tests are passing, and/or `npm run test -- -u` to update snapshots if I created and/or updated React Components.
- [✅ ] I have checked that the build works locally and that `npm run build` work fine.
- [ ✅] I've covered new added functionality with unit tests if necessary.


Patch:
diff --git a/firebase.json b/firebase.json
index 7cd9aad3..8922a961 100644
--- a/firebase.json
+++ b/firebase.json
@@ -58,7 +58,7 @@
   "redirects": [
     {
       "source": "/governance/",
-      "destination": "/en/about/governance/",
+      "destination": "/about/governance/",
       "type": "301"
     },
     {
@@ -68,22 +68,12 @@
     },
     {
       "source": "/releases/",
-      "destination": "/en/about/releases/",
-      "type": "301"
-    },
-    {
-      "source": "/privacy/",
-      "destination": "/en/",
-      "type": "301"
-    },
-    {
-      "source": "/en/about/privacy/",
-      "destination": "/en/",
+      "destination": "/about/releases/",
       "type": "301"
     },
     {
       "source": "/security/",
-      "destination": "/en/about/security/",
+      "destination": "/about/security/",
       "type": "301"
     },
     {
@@ -96,11 +86,6 @@
       "destination": "https://trademark-policy.openjsf.org/",
       "type": "301"
     },
-    {
-      "source": "/en/about/trademark/",
-      "destination": "https://trademark-policy.openjsf.org/",
-      "type": "301"
-    },
     {
       "source": "/docs/*",
       "destination": "/api/",
@@ -108,11 +93,11 @@
     },
     {
       "source": "/storybook/*",
-      "destination": "/en/",
+      "destination": "/",
       "type": "301"
     },
     {
-      "source": "/en/learn/the-package-json-guide/",
+      "source": "/learn/the-package-json-guide/",
       "destination": "https://docs.npmjs.com/cli/v8/configuring-npm/package-json",
       "type": "301"
     },
@@ -122,33 +107,28 @@
       "type": "301"
     },
     {
-      "source": "/en/learn/the-package-lockjson-file/",
+      "source": "/learn/the-package-lockjson-file/",
       "destination": "https://docs.npmjs.com/cli/v8/configuring-npm/package-lock-json",
       "type": "301"
     },
     {
-      "source": "/en/learn/how-to-exit-from-a-nodejs-program/",
-      "destination": "/en/learn/",
-      "type": "301"
-    },
-    {
-      "source": "/en/learn/where-does-npm-install-the-packages/",
-      "destination": "/en/learn/",
+      "source": "/learn/how-to-exit-from-a-nodejs-program/",
+      "destination": "/learn/",
       "type": "301"
     },
     {
-      "source": "/en/learn/get-http-request-body-data-using-nodejs/",
-      "destination": "/en/learn/",
+      "source": "/learn/where-does-npm-install-the-packages/",
+      "destination": "/learn/",
       "type": "301"
     },
     {
-      "source": "/en/learn/a-brief-history-of-nodejs/",
-      "destination": "/en/learn/",
+      "source": "/learn/get-http-request-body-data-using-nodejs/",
+      "destination": "/learn/",
       "type": "301"
     },
     {
-      "source": "/en/learn/nodejs-file-paths/",
-      "destination": "/en/learn/",
+      "source": "/learn/nodejs-file-paths/",
+      "destination": "/learn/",
       "type": "301"
     },
     {
@@ -171,374 +151,314 @@
       "destination": "https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Using_promises",
       "type": "301"
     },
-    {
-      "source": "/blog/",
-      "destination": "/en/blog",
-      "type": "301"
-    },
     {
       "source": "/blog/advisory-board/2014/12/05/listening-to-the-community",
-      "destination": "/en/blog",
+      "destination": "/blog/",
       "type": "301"
     },
     {
       "source": "/blog/community/2015/05/15/foundation-benefits-all/",
-      "destination": "/en/blog",
+      "destination": "/blog/",
       "type": "301"
     },
     {
       "source": "/blog/community/2016/09/06/v5-to-v7",
-      "destination": "/en/blog",
+      "destination": "/blog/",
       "type": "301"
     },
     {
       "source": "/blog/npm/2011/03/24/npm-1-0-global-vs-local-installation",
-      "destination": "/en/blog",
+      "destination": "/blog/",
       "type": "301"
     },
     {
       "source": "/blog/vulnerabilities/2017/01/27/openssl-january-2017",
-      "destination": "/en/blog",
+      "destination": "/blog/",
       "type": "301"
     },
     {
       "source": "/blog/vulnerabilities/2017/09/29/september-2017-path-validation",
-      "destination": "/en/blog",
+      "destination": "/blog/",
       "type": "301"
     },
     {
       "source": "/blog/weekly-updates/2015/04/24/weekly-update.2015-04-24",
-      "destination": "/en/blog",
+      "destination": "/blog/",
       "type": "301"
     },
     {
       "source": "/blog/weekly-updates/2015/05/29/weekly-update.2015-05-29",
-      "destination": "/en/blog",
+      "destination": "/blog/",
       "type": "301"
     },
     {
       "source": "/blog/weekly-updates/2015/07/31/weekly-update.2015-07-31",
-      "destination": "/en/blog",
+      "destination": "/blog/",
       "type": "301"
     },
     {
       "source": "/blog/weekly-updates/2016/02/15/weekly-update.2016-02-15",
-      "destination": "/en/blog",
+      "destination": "/blog/",
       "type": "301"
     },
     {
       "source": "/blog/weekly-updates/2016/03/07/weekly-update.2016-03-07",
-      "destination": "/en/blog",
-      "type": "301"
-    },
-    {
-      "source": "/blog/weekly-updates/2016/08/15/weekly-update.2016-08-15",
-      "destination": "/en/blog",
-      "type": "301"
-    },
-    {
-      "source": "/en/blog/announcements/2021/10/07/retiring-the-node-js-community-committee",
-      "destination": "/en/blog",
-      "type": "301"
-    },
-    {
-      "source": "/en/blog/announcements/2022/02/14/nodejs-trademarks-transferred-to-openjs-foundation",
-      "destination": "/en/blog",
+      "destination": "/blog/",
       "type": "301"
     },
     {
-      "source": "/en/blog/announcements/2022/04/19/v18-release-announce",
-      "destination": "/en/blog",
+      "source": "/blog/announcements/2021/10/07/retiring-the-node-js-community-committee",
+      "destination": "/blog/",
       "type": "301"
     },
     {
-      "source": "/en/blog/announcements/2022/06/08/nodejs16-eol",
-      "destination": "/en/blog",
+      "source": "/blog/announcements/2022/02/14/nodejs-trademarks-transferred-to-openjs-foundation",
+      "destination": "/blog/",
       "type": "301"
     },
     {
-      "source": "/en/blog/community/2016/12/03/update-v8-5.4",
-      "destination": "/en/blog",
+      "source": "/blog/announcements/2022/04/19/v18-release-announce",
+      "destination": "/blog/",
       "type": "301"
     },
     {
-      "source": "/en/blog/vulnerabilities/2018/06/12/june-2018-security-releases",
-      "destination": "/en/blog",
+      "source": "/blog/announcements/2022/06/08/nodejs16-eol",
+      "destination": "/blog/",
       "type": "301"
     },
     {
-      "source": "/en/blog/weekly-updates/2015/07/17/weekly-update.2015-07-17",
-      "destination": "/en/blog",
+      "source": "/blog/community/2016/12/03/update-v8-5.4",
+      "destination": "/blog/",
       "type": "301"
     },
     {
-      "source": "/en/blog/weekly-updates/2016/04/29/weekly-update.2016-04-29",
-      "destination": "/en/blog",
+      "source": "/blog/vulnerabilities/2018/06/12/june-2018-security-releases",
+      "destination": "/blog/",
       "type": "301"
     },
     {
-      "source": "/en/blog/weekly-updates/2016/07/22/weekly-update.2016-07-22",
-      "destination": "/en/blog",
+      "source": "/blog/weekly-updates/2015/07/17/weekly-update.2015-07-17",
+      "destination": "/blog/",
       "type": "301"
     },
     {
-      "source": "/en/blog/weekly-updates/2016/08/15/weekly-update.2016-08-15",
-      "destination": "/en/blog",
+      "source": "/blog/weekly-updates/2016/04/29/weekly-update.2016-04-29",
+      "destination": "/blog/",
       "type": "301"
     },
     {
-      "source": "/en/learn/accept-input-from-the-command-line-in-nodejs/",
-      "destination": "/en/learn/",
+      "source": "/blog/weekly-updates/2016/07/22/weekly-update.2016-07-22",
+      "destination": "/blog/",
       "type": "301"
     },
     {
-      "source": "/en/learn/asynchronous-flow-control/",
-      "destination": "/en/learn/",
-      "type": "301"
-    },
-    {
-      "source": "/en/learn/build-an-http-server/",
-      "destination": "/en/learn/",
-      "type": "301"
-    },
-    {
-      "source": "/en/learn/discover-javascript-timers/",
-      "destination": "/en/learn/",
-      "type": "301"
-    },
-    {
-      "source": "/en/learn/ecmascript-2015-es6-and-beyond/",
-      "destination": "/en/learn/",
-      "type": "301"
-    },
-    {
-      "source": "/en/learn/expose-functionality-from-a-nodejs-file-using-exports/",
-      "destination": "/en/learn/",
-      "type": "301"
-    },
-    {
-      "source": "/en/learn/find-the-installed-version-of-an-npm-package/",
-      "destination": "/en/learn/",
-      "type": "301"
-    },
-    {
-      "source": "/en/learn/how-to-log-an-object-in-nodejs/",
-      "destination": "/en/learn/",
-      "type": "301"
-    },
-    {
-      "source": "/en/learn/how-to-read-environment-variables-from-nodejs/",
-      "destination": "/en/learn/",
+      "source": "/blog/weekly-updates/2016/08/15/weekly-update.2016-08-15",
+      "destination": "/blog/",
       "type": "301"
     },
     {
-      "source": "/en/learn/how-to-use-the-nodejs-repl/",
-      "destination": "/en/learn/",
+      "source": "/learn/accept-input-from-the-command-line-in-nodejs/",
+      "destination": "/learn/",
       "type": "301"
     },
     {
-      "source": "/en/learn/install-an-older-version-of-an-npm-package/",
-      "destination": "/en/learn/",
+      "source": "/learn/asynchronous-flow-control/",
+      "destination": "/learn/",
       "type": "301"
     },
     {
-      "source": "/en/learn/making-http-requests-with-nodejs/",
-      "destination": "/en/learn/",
+      "source": "/learn/build-an-http-server/",
+      "destination": "/learn/",
       "type": "301"
     },
     {
-      "source": "/en/learn/modern-asynchronous-javascript-with-async-and-await/",
-      "destination": "/en/learn/",
+      "source": "/learn/discover-javascript-timers/",
+      "destination": "/learn/",
       "type": "301"
     },
     {
-      "source": "/en/learn/nodejs-accept-arguments-from-the-command-line/",
-      "destination": "/en/learn/",
+      "source": "/learn/expose-functionality-from-a-nodejs-file-using-exports/",
+      "destination": "/learn/",
       "type": "301"
     },
     {
-      "source": "/en/learn/nodejs-buffers/",
-      "destination": "/en/learn/",
+      "source": "/learn/how-to-log-an-object-in-nodejs/",
+      "destination": "/learn/",
       "type": "301"
     },
     {
-      "source": "/en/learn/nodejs-streams/",
-      "destination": "/en/learn/",
+      "source": "/learn/how-to-read-environment-variables-from-nodejs/",
+      "destination": "/learn/",
       "type": "301"
     },
     {
-      "source": "/en/learn/nodejs-with-typescript/",
-      "destination": "/en/learn/",
+      "source": "/learn/how-to-use-the-nodejs-repl/",
+      "destination": "/learn/",
       "type": "301"
     },
     {
-      "source": "/en/learn/nodejs-with-webassembly/",
-      "destination": "/en/learn/",
+      "source": "/learn/install-an-older-version-of-an-npm-package/",
+      "destination": "/learn/",
       "type": "301"
     },
     {
-      "source": "/en/learn/output-to-the-command-line-using-nodejs/",
-      "destination": "/en/learn/",
+      "source": "/learn/making-http-requests-with-nodejs/",
+      "destination": "/learn/",
       "type": "301"
     },
     {
-      "source": "/en/learn/overview-of-blocking-vs-non-blocking/",
-      "destination": "/en/learn/",
+      "source": "/learn/modern-asynchronous-javascript-with-async-and-await/",
+      "destination": "/learn/",
       "type": "301"
     },
     {
-      "source": "/en/learn/reading-files-with-nodejs/",
-      "destination": "/en/learn/",
+      "source": "/learn/nodejs-accept-arguments-from-the-command-line/",
+      "destination": "/learn/",
       "type": "301"
     },
     {
-      "source": "/en/learn/run-nodejs-scripts-from-the-command-line/",
-      "destination": "/en/learn/",
+      "source": "/learn/nodejs-streams/",
+      "destination": "/learn/",
       "type": "301"
     },
     {
-      "source": "/en/learn/semantic-versioning-using-npm/",
-      "destination": "/en/learn/",
+      "source": "/learn/nodejs-with-typescript/",
+      "destination": "/learn/",
       "type": "301"
     },
     {
-      "source": "/en/learn/the-nodejs-event-loop/",
-      "destination": "/en/learn/",
+      "source": "/learn/nodejs-with-webassembly/",
+      "destination": "/learn/",
       "type": "301"
     },
     {
-      "source": "/en/learn/the-nodejs-events-module/",
-      "destination": "/en/learn/",
+      "source": "/learn/output-to-the-command-line-using-nodejs/",
+      "destination": "/learn/",
       "type": "301"
     },
     {
-      "source": "/en/learn/the-npx-nodejs-package-runner/",
-      "destination": "/en/learn/",
+      "source": "/learn/overview-of-blocking-vs-non-blocking/",
+      "destination": "/learn/",
       "type": "301"
     },
     {
-      "source": "/en/learn/the-v8-javascript-engine/",
-      "destination": "/en/learn/",
+      "source": "/learn/reading-files-with-nodejs/",
+      "destination": "/learn/",
       "type": "301"
     },
     {
-      "source": "/en/learn/understanding-javascript-promises/",
-      "destination": "/en/learn/",
+      "source": "/learn/semantic-versioning-using-npm/",
+      "destination": "/learn/",
       "type": "301"
     },
     {
-      "source": "/en/learn/understanding-setimmediate/",
-      "destination": "/en/learn/",
+      "source": "/learn/the-nodejs-event-loop/",
+      "destination": "/learn/",
       "type": "301"
     },
     {
-      "source": "/en/learn/uninstalling-npm-packages/",
-      "destination": "/en/learn/",
+      "source": "/learn/the-nodejs-events-module/",
+      "destination": "/learn/",
       "type": "301"
     },
     {
-      "source": "/en/learn/update-all-the-nodejs-dependencies-to-their-latest-version/",
-      "destination": "/en/learn/",
+      "source": "/learn/the-npx-nodejs-package-runner/",
+      "destination": "/learn/",
       "type": "301"
     },
     {
-      "source": "/en/learn/working-with-folders-in-nodejs",
-      "destination": "/en/learn/",
+      "source": "/learn/the-v8-javascript-engine/",
+      "destination": "/learn/",
       "type": "301"
     },
     {
-      "source": "/fr/learn/a-brief-history-of-nodejs/",
-      "destination": "/fr/learn",
+      "source": "/learn/understanding-javascript-promises/",
+      "destination": "/learn/",
       "type": "301"
     },
     {
-      "source": "/fr/learn/build-an-http-server/",
-      "destination": "/fr/learn",
+      "source": "/learn/understanding-setimmediate/",
+      "destination": "/learn/",
       "type": "301"
     },
     {
-      "source": "/fr/learn/ecmascript-2015-es6-and-beyond/",
-      "destination": "/fr/learn",
+      "source": "/learn/uninstalling-npm-packages/",
+      "destination": "/learn/",
       "type": "301"
     },
     {
-      "source": "/fr/learn/error-handling-in-nodejs/",
-      "destination": "/fr/learn",
+      "source": "/learn/working-with-folders-in-nodejs",
+      "destination": "/learn/",
       "type": "301"
     },
     {
-      "source": "/fr/learn/find-the-installed-version-of-an-npm-package/",
-      "destination": "/fr/learn",
+      "source": "/learn/a-brief-history-of-nodejs/",
+      "destination": "/learn/",
       "type": "301"
     },
     {
-      "source": "/fr/learn/javascript-asynchronous-programming-and-callbacks/",
-      "destination": "/fr/learn",
+      "source": "/learn/ecmascript-2015-es6-and-beyond/",
+      "destination": "/learn/",
       "type": "301"
     },
     {
-      "source": "/fr/learn/making-http-requests-with-nodejs/",
-      "destination": "/fr/learn",
+      "source": "/learn/error-handling-in-nodejs/",
+      "destination": "/learn/",
       "type": "301"
     },
     {
-      "source": "/fr/learn/nodejs-buffers/",
-      "destination": "/fr/learn",
+      "source": "/learn/find-the-installed-version-of-an-npm-package/",
+      "destination": "/learn/",
       "type": "301"
     },
     {
-      "source": "/fr/learn/nodejs-file-paths/",
-      "destination": "/fr/learn",
+      "source": "/learn/javascript-asynchronous-programming-and-callbacks/",
+      "destination": "/learn/",
       "type": "301"
     },
     {
-      "source": "/fr/learn/npm-dependencies-and-devdependencies/",
-      "destination": "/fr/learn",
+      "source": "/learn/nodejs-buffers/",
+      "destination": "/learn/",
       "type": "301"
     },
     {
-      "source": "/fr/learn/run-nodejs-scripts-from-the-command-line/",
-      "destination": "/fr/learn",
+      "source": "/learn/npm-dependencies-and-devdependencies/",
+      "destination": "/learn/",
       "type": "301"
     },
     {
-      "source": "/fr/learn/the-nodejs-event-emitter/",
-      "destination": "/fr/learn",
+      "source": "/learn/run-nodejs-scripts-from-the-command-line/",
+      "destination": "/learn/",
       "type": "301"
     },
     {
-      "source": "/fr/learn/the-nodejs-events-module/",
-      "destination": "/fr/learn",
+      "source": "/learn/the-nodejs-event-emitter/",
+      "destination": "/learn/",
       "type": "301"
     },
     {
-      "source": "/fr/learn/the-nodejs-path-module/",
-      "destination": "/fr/learn",
+      "source": "/learn/the-nodejs-path-module/",
+      "destination": "/learn/",
       "type": "301"
     },
     {
-      "source": "/fr/learn/update-all-the-nodejs-dependencies-to-their-latest-version/",
-      "destination": "/fr/learn",
+      "source": "/learn/update-all-the-nodejs-dependencies-to-their-latest-version/",
+      "destination": "/learn/",
       "type": "301"
     },
     {
-      "source": "/fr/learn/working-with-folders-in-nodejs/",
-      "destination": "/fr/learn",
+      "source": "/learn/working-with-folders-in-nodejs/",
+      "destination": "/learn/",
       "type": "301"
     },
     {
-      "source": "/fr/learn/writing-files-with-nodejs/",
-      "destination": "/fr/learn",
+      "source": "/learn/writing-files-with-nodejs/",
+      "destination": "/learn/",
       "type": "301"
     },
     {
       "source": "/learn/introduction-to-nodejs/",
-      "destination": "/en/learn/",
-      "type": "301"
-    },
-    {
-      "source": "/learn/the-nodejs-http-module/",
-      "destination": "/en/learn/",
+      "destination": "/learn/",
       "type": "301"
     },
     {
@@ -557,4 +477,4 @@
       "type": "301"
     }
   ]
-}
+}
\ No newline at end of file
diff --git a/redirects.js b/redirects.js
index 14a0a3fe..93c7be84 100644
--- a/redirects.js
+++ b/redirects.js
@@ -2,31 +2,29 @@
 // Note.: Gatsby requires trailing slashes on the path names
 module.exports = {
   // Redirects old About pages path to the new ones
-  '/governance/': '/en/about/governance/',
+  '/governance/': '/about/governance/',
   '/working-groups/':
     'https://github.com/nodejs/TSC/blob/main/WORKING_GROUPS.md',
-  '/releases/': '/en/about/releases/',
-  '/privacy/': '/en/',
-  '/en/about/privacy/': '/en/',
-  '/security/': '/en/about/security/',
+  '/releases/': '/about/releases/',
+  '/security/': '/about/security/',
+
   // Outside Redirects
   '/trademark/': 'https://trademark-policy.openjsf.org/',
   '/about/trademark/': 'https://trademark-policy.openjsf.org/',
-  '/en/about/trademark/': 'https://trademark-policy.openjsf.org/',
+
   // Redirects the old `/docs` path to `/api`
   '/docs/*': '/api/',
-  '/storybook/*': '/en/',
-  '/en/learn/the-package-json-guide/':
+  '/storybook/*': '/',
+  '/learn/the-package-json-guide/':
     'https://docs.npmjs.com/cli/v8/configuring-npm/package-json',
   '/the-package-json-guide/':
     'https://docs.npmjs.com/cli/v8/configuring-npm/package-json',
-  '/en/learn/the-package-lockjson-file/':
+  '/learn/the-package-lockjson-file/':
     'https://docs.npmjs.com/cli/v8/configuring-npm/package-lock-json',
-  '/en/learn/how-to-exit-from-a-nodejs-program/': '/en/learn/',
-  '/en/learn/where-does-npm-install-the-packages/': '/en/learn/',
-  '/en/learn/get-http-request-body-data-using-nodejs/': '/en/learn/',
-  '/en/learn/a-brief-history-of-nodejs/': '/en/learn/',
-  '/en/learn/nodejs-file-paths/': '/en/learn/',
+  '/learn/how-to-exit-from-a-nodejs-program/': '/learn/',
+  '/learn/where-does-npm-install-the-packages/': '/learn/',
+  '/learn/get-http-request-body-data-using-nodejs/': '/learn/',
+  '/learn/nodejs-file-paths/': '/learn/',
   '/learn/asynchronous-work/blocking-vs-non-blocking':
     'https://developer.mozilla.org/en-US/docs/Learn/JavaScript/Asynchronous/Introducing',
   '/learn/discover-javascript-timers':
@@ -35,84 +33,73 @@ module.exports = {
     'https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Using_promises',
   '/learn/the-nodejs-event-loop':
     'https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Using_promises',
-  '/blog/': '/en/blog',
-  '/blog/advisory-board/2014/12/05/listening-to-the-community': '/en/blog',
-  '/blog/community/2015/05/15/foundation-benefits-all/': '/en/blog',
-  '/blog/community/2016/09/06/v5-to-v7': '/en/blog',
-  '/blog/npm/2011/03/24/npm-1-0-global-vs-local-installation': '/en/blog',
-  '/blog/vulnerabilities/2017/01/27/openssl-january-2017': '/en/blog',
-  '/blog/vulnerabilities/2017/09/29/september-2017-path-validation': '/en/blog',
-  '/blog/weekly-updates/2015/04/24/weekly-update.2015-04-24': '/en/blog',
-  '/blog/weekly-updates/2015/05/29/weekly-update.2015-05-29': '/en/blog',
-  '/blog/weekly-updates/2015/07/31/weekly-update.2015-07-31': '/en/blog',
-  '/blog/weekly-updates/2016/02/15/weekly-update.2016-02-15': '/en/blog',
-  '/blog/weekly-updates/2016/03/07/weekly-update.2016-03-07': '/en/blog',
-  '/blog/weekly-updates/2016/08/15/weekly-update.2016-08-15': '/en/blog',
-  '/en/blog/announcements/2021/10/07/retiring-the-node-js-community-committee':
-    '/en/blog',
-  '/en/blog/announcements/2022/02/14/nodejs-trademarks-transferred-to-openjs-foundation':
-    '/en/blog',
-  '/en/blog/announcements/2022/04/19/v18-release-announce': '/en/blog',
-  '/en/blog/announcements/2022/06/08/nodejs16-eol': '/en/blog',
-  '/en/blog/community/2016/12/03/update-v8-5.4': '/en/blog',
-  '/en/blog/vulnerabilities/2018/06/12/june-2018-security-releases': '/en/blog',
-  '/en/blog/weekly-updates/2015/07/17/weekly-update.2015-07-17': '/en/blog',
-  '/en/blog/weekly-updates/2016/04/29/weekly-update.2016-04-29': '/en/blog',
-  '/en/blog/weekly-updates/2016/07/22/weekly-update.2016-07-22': '/en/blog',
-  '/en/blog/weekly-updates/2016/08/15/weekly-update.2016-08-15': '/en/blog',
-  '/en/learn/accept-input-from-the-command-line-in-nodejs/': '/en/learn/',
-  '/en/learn/asynchronous-flow-control/': '/en/learn/',
-  '/en/learn/build-an-http-server/': '/en/learn/',
-  '/en/learn/discover-javascript-timers/': '/en/learn/',
-  '/en/learn/ecmascript-2015-es6-and-beyond/': '/en/learn/',
-  '/en/learn/expose-functionality-from-a-nodejs-file-using-exports/':
-    '/en/learn/',
-  '/en/learn/find-the-installed-version-of-an-npm-package/': '/en/learn/',
-  '/en/learn/how-to-log-an-object-in-nodejs/': '/en/learn/',
-  '/en/learn/how-to-read-environment-variables-from-nodejs/': '/en/learn/',
-  '/en/learn/how-to-use-the-nodejs-repl/': '/en/learn/',
-  '/en/learn/install-an-older-version-of-an-npm-package/': '/en/learn/',
-  '/en/learn/making-http-requests-with-nodejs/': '/en/learn/',
-  '/en/learn/modern-asynchronous-javascript-with-async-and-await/':
-    '/en/learn/',
-  '/en/learn/nodejs-accept-arguments-from-the-command-line/': '/en/learn/',
-  '/en/learn/nodejs-buffers/': '/en/learn/',
-  '/en/learn/nodejs-streams/': '/en/learn/',
-  '/en/learn/nodejs-with-typescript/': '/en/learn/',
-  '/en/learn/nodejs-with-webassembly/': '/en/learn/',
-  '/en/learn/output-to-the-command-line-using-nodejs/': '/en/learn/',
-  '/en/learn/overview-of-blocking-vs-non-blocking/': '/en/learn/',
-  '/en/learn/reading-files-with-nodejs/': '/en/learn/',
-  '/en/learn/run-nodejs-scripts-from-the-command-line/': '/en/learn/',
-  '/en/learn/semantic-versioning-using-npm/': '/en/learn/',
-  '/en/learn/the-nodejs-event-loop/': '/en/learn/',
-  '/en/learn/the-nodejs-events-module/': '/en/learn/',
-  '/en/learn/the-npx-nodejs-package-runner/': '/en/learn/',
-  '/en/learn/the-v8-javascript-engine/': '/en/learn/',
-  '/en/learn/understanding-javascript-promises/': '/en/learn/',
-  '/en/learn/understanding-setimmediate/': '/en/learn/',
-  '/en/learn/uninstalling-npm-packages/': '/en/learn/',
-  '/en/learn/update-all-the-nodejs-dependencies-to-their-latest-version/':
-    '/en/learn/',
-  '/en/learn/working-with-folders-in-nodejs': '/en/learn/',
-  '/fr/learn/a-brief-history-of-nodejs/': '/fr/learn',
-  '/fr/learn/build-an-http-server/': '/fr/learn',
-  '/fr/learn/ecmascript-2015-es6-and-beyond/': '/fr/learn',
-  '/fr/learn/error-handling-in-nodejs/': '/fr/learn',
-  '/fr/learn/find-the-installed-version-of-an-npm-package/': '/fr/learn',
-  '/fr/learn/javascript-asynchronous-programming-and-callbacks/': '/fr/learn',
-  '/fr/learn/making-http-requests-with-nodejs/': '/fr/learn',
-  '/fr/learn/nodejs-buffers/': '/fr/learn',
-  '/fr/learn/nodejs-file-paths/': '/fr/learn',
-  '/fr/learn/npm-dependencies-and-devdependencies/': '/fr/learn',
-  '/fr/learn/run-nodejs-scripts-from-the-command-line/': '/fr/learn',
-  '/fr/learn/the-nodejs-event-emitter/': '/fr/learn',
-  '/fr/learn/the-nodejs-events-module/': '/fr/learn',
-  '/fr/learn/the-nodejs-path-module/': '/fr/learn',
-  '/fr/learn/update-all-the-nodejs-dependencies-to-their-latest-version/':
-    '/fr/learn',
-  '/fr/learn/working-with-folders-in-nodejs/': '/fr/learn',
-  '/fr/learn/writing-files-with-nodejs/': '/fr/learn',
-  '/learn/introduction-to-nodejs/': '/en/learn/',
-  '/learn/the-nodejs-http-module/': '/en/learn/',
+
+  // Blog
+  '/blog/advisory-board/2014/12/05/listening-to-the-community': '/blog/',
+  '/blog/community/2015/05/15/foundation-benefits-all/': '/blog/',
+  '/blog/community/2016/09/06/v5-to-v7': '/blog/',
+  '/blog/npm/2011/03/24/npm-1-0-global-vs-local-installation': '/blog/',
+  '/blog/vulnerabilities/2017/01/27/openssl-january-2017': '/blog/',
+  '/blog/vulnerabilities/2017/09/29/september-2017-path-validation': '/blog/',
+  '/blog/weekly-updates/2015/04/24/weekly-update.2015-04-24': '/blog/',
+  '/blog/weekly-updates/2015/05/29/weekly-update.2015-05-29': '/blog/',
+  '/blog/weekly-updates/2015/07/31/weekly-update.2015-07-31': '/blog/',
+  '/blog/weekly-updates/2016/02/15/weekly-update.2016-02-15': '/blog/',
+  '/blog/weekly-updates/2016/03/07/weekly-update.2016-03-07': '/blog/',
+  '/blog/announcements/2021/10/07/retiring-the-node-js-community-committee':
+    '/blog/',
+  '/blog/announcements/2022/02/14/nodejs-trademarks-transferred-to-openjs-foundation':
+    '/blog/',
+  '/blog/announcements/2022/04/19/v18-release-announce': '/blog/',
+  '/blog/announcements/2022/06/08/nodejs16-eol': '/blog/',
+  '/blog/community/2016/12/03/update-v8-5.4': '/blog/',
+  '/blog/vulnerabilities/2018/06/12/june-2018-security-releases': '/blog/',
+  '/blog/weekly-updates/2015/07/17/weekly-update.2015-07-17': '/blog/',
+  '/blog/weekly-updates/2016/04/29/weekly-update.2016-04-29': '/blog/',
+  '/blog/weekly-updates/2016/07/22/weekly-update.2016-07-22': '/blog/',
+  '/blog/weekly-updates/2016/08/15/weekly-update.2016-08-15': '/blog/',
+
+  // learn
+  '/learn/accept-input-from-the-command-line-in-nodejs/': '/learn/',
+  '/learn/asynchronous-flow-control/': '/learn/',
+  '/learn/build-an-http-server/': '/learn/',
+  '/learn/discover-javascript-timers/': '/learn/',
+  '/learn/expose-functionality-from-a-nodejs-file-using-exports/': '/learn/',
+  '/learn/how-to-log-an-object-in-nodejs/': '/learn/',
+  '/learn/how-to-read-environment-variables-from-nodejs/': '/learn/',
+  '/learn/how-to-use-the-nodejs-repl/': '/learn/',
+  '/learn/install-an-older-version-of-an-npm-package/': '/learn/',
+  '/learn/making-http-requests-with-nodejs/': '/learn/',
+  '/learn/modern-asynchronous-javascript-with-async-and-await/': '/learn/',
+  '/learn/nodejs-accept-arguments-from-the-command-line/': '/learn/',
+  '/learn/nodejs-streams/': '/learn/',
+  '/learn/nodejs-with-typescript/': '/learn/',
+  '/learn/nodejs-with-webassembly/': '/learn/',
+  '/learn/output-to-the-command-line-using-nodejs/': '/learn/',
+  '/learn/overview-of-blocking-vs-non-blocking/': '/learn/',
+  '/learn/reading-files-with-nodejs/': '/learn/',
+  '/learn/semantic-versioning-using-npm/': '/learn/',
+  '/learn/the-nodejs-event-loop/': '/learn/',
+  '/learn/the-nodejs-events-module/': '/learn/',
+  '/learn/the-npx-nodejs-package-runner/': '/learn/',
+  '/learn/the-v8-javascript-engine/': '/learn/',
+  '/learn/understanding-javascript-promises/': '/learn/',
+  '/learn/understanding-setimmediate/': '/learn/',
+  '/learn/uninstalling-npm-packages/': '/learn/',
+  '/learn/working-with-folders-in-nodejs': '/learn/',
+  '/learn/a-brief-history-of-nodejs/': '/learn/',
+  '/learn/ecmascript-2015-es6-and-beyond/': '/learn/',
+  '/learn/error-handling-in-nodejs/': '/learn/',
+  '/learn/find-the-installed-version-of-an-npm-package/': '/learn/',
+  '/learn/javascript-asynchronous-programming-and-callbacks/': '/learn/',
+  '/learn/nodejs-buffers/': '/learn/',
+  '/learn/npm-dependencies-and-devdependencies/': '/learn/',
+  '/learn/run-nodejs-scripts-from-the-command-line/': '/learn/',
+  '/learn/the-nodejs-event-emitter/': '/learn/',
+  '/learn/the-nodejs-path-module/': '/learn/',
+  '/learn/update-all-the-nodejs-dependencies-to-their-latest-version/':
+    '/learn/',
+  '/learn/working-with-folders-in-nodejs/': '/learn/',
+  '/learn/writing-files-with-nodejs/': '/learn/',
+  '/learn/introduction-to-nodejs/': '/learn/',
 };
diff --git a/src/components/Footer/index.tsx b/src/components/Footer/index.tsx
index b8d6e1ce..751c86b4 100644
--- a/src/components/Footer/index.tsx
+++ b/src/components/Footer/index.tsx
@@ -24,9 +24,15 @@ const Footer = (): JSX.Element => (
         </a>
       </li>
       <li>
-        <Link className={styles.link} to="/about/privacy">
+        <a
+          className={styles.link}
+          target="_blank"
+          href="https://privacy-policy.openjsf.org/"
+          rel="noopener noreferrer"
+          aria-label="Node.js Privacy Policy - PDF (Opens in new tab)"
+        >
           <FormattedMessage id="components.footer.links.privacy" />
-        </Link>
+        </a>
       </li>
       <li>
         <a


Test patch:
diff --git a/src/components/Footer/__tests__/__snapshots__/index.test.tsx.snap b/src/components/Footer/__tests__/__snapshots__/index.test.tsx.snap
index 103cdce7..97a55c1e 100644
--- a/src/components/Footer/__tests__/__snapshots__/index.test.tsx.snap
+++ b/src/components/Footer/__tests__/__snapshots__/index.test.tsx.snap
@@ -21,8 +21,11 @@ exports[`Tests for Footer component renders correctly 1`] = `
       </li>
       <li>
         <a
+          aria-label="Node.js Privacy Policy - PDF (Opens in new tab)"
           class="link"
-          href="/about/privacy"
+          href="https://privacy-policy.openjsf.org/"
+          rel="noopener noreferrer"
+          target="_blank"
         >
           Privacy Policy
         </a>
diff --git a/src/components/Layout/__tests__/__snapshots__/page.test.tsx.snap b/src/components/Layout/__tests__/__snapshots__/page.test.tsx.snap
index e1206d17..a6c184a8 100644
--- a/src/components/Layout/__tests__/__snapshots__/page.test.tsx.snap
+++ b/src/components/Layout/__tests__/__snapshots__/page.test.tsx.snap
@@ -342,8 +342,11 @@ exports[`PageLayout component renders correctly with data 1`] = `
         </li>
         <li>
           <a
+            aria-label="Node.js Privacy Policy - PDF (Opens in new tab)"
             class="link"
-            href="/about/privacy"
+            href="https://privacy-policy.openjsf.org/"
+            rel="noopener noreferrer"
+            target="_blank"
           >
             Privacy Policy
           </a>
diff --git a/src/pages/about/__tests__/__snapshots__/resources.test.tsx.snap b/src/pages/about/__tests__/__snapshots__/resources.test.tsx.snap
index c3d3fdba..5a4761a2 100644
--- a/src/pages/about/__tests__/__snapshots__/resources.test.tsx.snap
+++ b/src/pages/about/__tests__/__snapshots__/resources.test.tsx.snap
@@ -473,8 +473,11 @@ exports[`Resources page renders correctly 1`] = `
         </li>
         <li>
           <a
+            aria-label="Node.js Privacy Policy - PDF (Opens in new tab)"
             class="link"
-            href="/about/privacy"
+            href="https://privacy-policy.openjsf.org/"
+            rel="noopener noreferrer"
+            target="_blank"
           >
             Privacy Policy
           </a>
diff --git a/src/pages/download/__tests__/__snapshots__/index.test.tsx.snap b/src/pages/download/__tests__/__snapshots__/index.test.tsx.snap
index 1868f398..4cbc239a 100644
--- a/src/pages/download/__tests__/__snapshots__/index.test.tsx.snap
+++ b/src/pages/download/__tests__/__snapshots__/index.test.tsx.snap
@@ -812,8 +812,11 @@ exports[`Download page renders correctly 1`] = `
         </li>
         <li>
           <a
+            aria-label="Node.js Privacy Policy - PDF (Opens in new tab)"
             class="link"
-            href="/about/privacy"
+            href="https://privacy-policy.openjsf.org/"
+            rel="noopener noreferrer"
+            target="_blank"
           >
             Privacy Policy
           </a>
@@ -1750,8 +1753,11 @@ exports[`Download page should handle LTS to Current switch 1`] = `
         </li>
         <li>
           <a
+            aria-label="Node.js Privacy Policy - PDF (Opens in new tab)"
             class="link"
-            href="/about/privacy"
+            href="https://privacy-policy.openjsf.org/"
+            rel="noopener noreferrer"
+            target="_blank"
           >
             Privacy Policy
           </a>
diff --git a/src/pages/download/__tests__/__snapshots__/package-manager.test.tsx.snap b/src/pages/download/__tests__/__snapshots__/package-manager.test.tsx.snap
index cc473ec6..50d2160c 100644
--- a/src/pages/download/__tests__/__snapshots__/package-manager.test.tsx.snap
+++ b/src/pages/download/__tests__/__snapshots__/package-manager.test.tsx.snap
@@ -474,8 +474,11 @@ exports[`Package Manager Page renders correctly 1`] = `
         </li>
         <li>
           <a
+            aria-label="Node.js Privacy Policy - PDF (Opens in new tab)"
             class="link"
-            href="/about/privacy"
+            href="https://privacy-policy.openjsf.org/"
+            rel="noopener noreferrer"
+            target="_blank"
           >
             Privacy Policy
           </a>
diff --git a/src/templates/__tests__/__snapshots__/learn.test.tsx.snap b/src/templates/__tests__/__snapshots__/learn.test.tsx.snap
index 36155fca..31359b8b 100644
--- a/src/templates/__tests__/__snapshots__/learn.test.tsx.snap
+++ b/src/templates/__tests__/__snapshots__/learn.test.tsx.snap
@@ -417,8 +417,11 @@ exports[`Learn Template renders correctly 1`] = `
         </li>
         <li>
           <a
+            aria-label="Node.js Privacy Policy - PDF (Opens in new tab)"
             class="link"
-            href="/about/privacy"
+            href="https://privacy-policy.openjsf.org/"
+            rel="noopener noreferrer"
+            target="_blank"
           >
             Privacy Policy
           </a>
diff --git a/src/templates/__tests__/__snapshots__/post.test.tsx.snap b/src/templates/__tests__/__snapshots__/post.test.tsx.snap
index 9ba90e30..c52f1aae 100644
--- a/src/templates/__tests__/__snapshots__/post.test.tsx.snap
+++ b/src/templates/__tests__/__snapshots__/post.test.tsx.snap
@@ -304,8 +304,11 @@ exports[`LearnLayout Template renders correctly 1`] = `
         </li>
         <li>
           <a
+            aria-label="Node.js Privacy Policy - PDF (Opens in new tab)"
             class="link"
-            href="/about/privacy"
+            href="https://privacy-policy.openjsf.org/"
+            rel="noopener noreferrer"
+            target="_blank"
           >
             Privacy Policy
           </a>