@@ -542,32 +542,32 @@ server {
542542 rewrite ^/academy/php$ /academy/php/use -apify-from-php redirect; # not permanent in case we want to reuse /php in the future
543543
544544 # Academy: replacing the 'Web Scraping for Beginners' course
545- rewrite ^/academy/web-scraping-for -beginners/best-practices$ /academy/scraping-basics-javascript?legacy-js-course=/legacy/ best-practices permanent;
546- rewrite ^/academy/web-scraping-for -beginners/introduction$ /academy/scraping-basics-javascript?legacy-js-course=/legacy/ introduction permanent;
547- rewrite ^/academy/web-scraping-for -beginners/challenge/initializing-and-setting-up$ /academy/scraping-basics-javascript?legacy-js-course=/legacy/ challenge/initializing-and-setting-up permanent;
548- rewrite ^/academy/web-scraping-for -beginners/challenge/modularity$ /academy/scraping-basics-javascript?legacy-js-course=/legacy/ challenge/modularity permanent;
549- rewrite ^/academy/web-scraping-for -beginners/challenge/scraping-amazon$ /academy/scraping-basics-javascript?legacy-js-course=/legacy/ challenge/scraping-amazon permanent;
550- rewrite ^/academy/web-scraping-for -beginners/challenge$ /academy/scraping-basics-javascript?legacy-js-course=/legacy/ challenge permanent;
551- rewrite ^/academy/web-scraping-for -beginners/crawling/exporting-data$ /academy/scraping-basics-javascript/framework?legacy-js-course=/legacy/ crawling/exporting-data permanent;
552- rewrite ^/academy/web-scraping-for -beginners/crawling/filtering-links$ /academy/scraping-basics-javascript/getting-links?legacy-js-course=/legacy/ crawling/filtering-links permanent;
553- rewrite ^/academy/web-scraping-for -beginners/crawling/finding-links$ /academy/scraping-basics-javascript/getting-links?legacy-js-course=/legacy/ crawling/finding-links permanent;
554- rewrite ^/academy/web-scraping-for -beginners/crawling/first-crawl$ /academy/scraping-basics-javascript/crawling?legacy-js-course=/legacy/ crawling/first-crawl permanent;
555- rewrite ^/academy/web-scraping-for -beginners/crawling/headless-browser$ /academy/scraping-basics-javascript?legacy-js-course=/legacy/ crawling/headless-browser permanent;
556- rewrite ^/academy/web-scraping-for -beginners/crawling/pro-scraping$ /academy/scraping-basics-javascript/framework?legacy-js-course=/legacy/ crawling/pro-scraping permanent;
557- rewrite ^/academy/web-scraping-for -beginners/crawling/recap-extraction-basics$ /academy/scraping-basics-javascript/extracting-data?legacy-js-course=/legacy/ crawling/recap-extraction-basics permanent;
558- rewrite ^/academy/web-scraping-for -beginners/crawling/relative-urls$ /academy/scraping-basics-javascript/getting-links?legacy-js-course=/legacy/ crawling/relative-urls permanent;
559- rewrite ^/academy/web-scraping-for -beginners/crawling/scraping-the-data$ /academy/scraping-basics-javascript/scraping-variants?legacy-js-course=/legacy/ crawling/scraping-the-data permanent;
560- rewrite ^/academy/web-scraping-for -beginners/crawling$ /academy/scraping-basics-javascript/crawling?legacy-js-course=/legacy/ crawling permanent;
561- rewrite ^/academy/web-scraping-for -beginners/data-extraction/browser-devtools$ /academy/scraping-basics-javascript/devtools-inspecting?legacy-js-course=/legacy/ data-extraction/browser-devtools permanent;
562- rewrite ^/academy/web-scraping-for -beginners/data-extraction/computer-preparation$ /academy/scraping-basics-javascript/downloading-html?legacy-js-course=/legacy/ data-extraction/computer-preparation permanent;
563- rewrite ^/academy/web-scraping-for -beginners/data-extraction/devtools-continued$ /academy/scraping-basics-javascript/devtools-extracting-data?legacy-js-course=/legacy/ data-extraction/devtools-continued permanent;
564- rewrite ^/academy/web-scraping-for -beginners/data-extraction/node-continued$ /academy/scraping-basics-javascript/extracting-data?legacy-js-course=/legacy/ data-extraction/node-continued permanent;
565- rewrite ^/academy/web-scraping-for -beginners/data-extraction/node-js-scraper$ /academy/scraping-basics-javascript/downloading-html?legacy-js-course=/legacy/ data-extraction/node-js-scraper permanent;
566- rewrite ^/academy/web-scraping-for -beginners/data-extraction/project-setup$ /academy/scraping-basics-javascript/downloading-html?legacy-js-course=/legacy/ data-extraction/project-setup permanent;
567- rewrite ^/academy/web-scraping-for -beginners/data-extraction/save-to-csv$ /academy/scraping-basics-javascript/saving-data?legacy-js-course=/legacy/ data-extraction/save-to-csv permanent;
568- rewrite ^/academy/web-scraping-for -beginners/data-extraction/using-devtools$ /academy/scraping-basics-javascript/devtools-locating-elements?legacy-js-course=/legacy/ data-extraction/using-devtools permanent;
569- rewrite ^/academy/web-scraping-for -beginners/data-extraction$ /academy/scraping-basics-javascript/devtools-inspecting?legacy-js-course=/legacy/ data-extraction permanent;
570- rewrite ^/academy/web-scraping-for -beginners$ /academy/scraping-basics-javascript?legacy-js-course=/legacy permanent;
545+ rewrite ^/academy/web-scraping-for -beginners/best-practices$ /academy/scraping-basics-javascript?legacy-js-course=/best-practices permanent;
546+ rewrite ^/academy/web-scraping-for -beginners/introduction$ /academy/scraping-basics-javascript?legacy-js-course=/introduction permanent;
547+ rewrite ^/academy/web-scraping-for -beginners/challenge/initializing-and-setting-up$ /academy/scraping-basics-javascript?legacy-js-course=/challenge/initializing-and-setting-up permanent;
548+ rewrite ^/academy/web-scraping-for -beginners/challenge/modularity$ /academy/scraping-basics-javascript?legacy-js-course=/challenge/modularity permanent;
549+ rewrite ^/academy/web-scraping-for -beginners/challenge/scraping-amazon$ /academy/scraping-basics-javascript?legacy-js-course=/challenge/scraping-amazon permanent;
550+ rewrite ^/academy/web-scraping-for -beginners/challenge$ /academy/scraping-basics-javascript?legacy-js-course=/challenge permanent;
551+ rewrite ^/academy/web-scraping-for -beginners/crawling/exporting-data$ /academy/scraping-basics-javascript/framework?legacy-js-course=/crawling/exporting-data permanent;
552+ rewrite ^/academy/web-scraping-for -beginners/crawling/filtering-links$ /academy/scraping-basics-javascript/getting-links?legacy-js-course=/crawling/filtering-links permanent;
553+ rewrite ^/academy/web-scraping-for -beginners/crawling/finding-links$ /academy/scraping-basics-javascript/getting-links?legacy-js-course=/crawling/finding-links permanent;
554+ rewrite ^/academy/web-scraping-for -beginners/crawling/first-crawl$ /academy/scraping-basics-javascript/crawling?legacy-js-course=/crawling/first-crawl permanent;
555+ rewrite ^/academy/web-scraping-for -beginners/crawling/headless-browser$ /academy/scraping-basics-javascript?legacy-js-course=/crawling/headless-browser permanent;
556+ rewrite ^/academy/web-scraping-for -beginners/crawling/pro-scraping$ /academy/scraping-basics-javascript/framework?legacy-js-course=/crawling/pro-scraping permanent;
557+ rewrite ^/academy/web-scraping-for -beginners/crawling/recap-extraction-basics$ /academy/scraping-basics-javascript/extracting-data?legacy-js-course=/crawling/recap-extraction-basics permanent;
558+ rewrite ^/academy/web-scraping-for -beginners/crawling/relative-urls$ /academy/scraping-basics-javascript/getting-links?legacy-js-course=/crawling/relative-urls permanent;
559+ rewrite ^/academy/web-scraping-for -beginners/crawling/scraping-the-data$ /academy/scraping-basics-javascript/scraping-variants?legacy-js-course=/crawling/scraping-the-data permanent;
560+ rewrite ^/academy/web-scraping-for -beginners/crawling$ /academy/scraping-basics-javascript/crawling?legacy-js-course=/crawling permanent;
561+ rewrite ^/academy/web-scraping-for -beginners/data-extraction/browser-devtools$ /academy/scraping-basics-javascript/devtools-inspecting?legacy-js-course=/data-extraction/browser-devtools permanent;
562+ rewrite ^/academy/web-scraping-for -beginners/data-extraction/computer-preparation$ /academy/scraping-basics-javascript/downloading-html?legacy-js-course=/data-extraction/computer-preparation permanent;
563+ rewrite ^/academy/web-scraping-for -beginners/data-extraction/devtools-continued$ /academy/scraping-basics-javascript/devtools-extracting-data?legacy-js-course=/data-extraction/devtools-continued permanent;
564+ rewrite ^/academy/web-scraping-for -beginners/data-extraction/node-continued$ /academy/scraping-basics-javascript/extracting-data?legacy-js-course=/data-extraction/node-continued permanent;
565+ rewrite ^/academy/web-scraping-for -beginners/data-extraction/node-js-scraper$ /academy/scraping-basics-javascript/downloading-html?legacy-js-course=/data-extraction/node-js-scraper permanent;
566+ rewrite ^/academy/web-scraping-for -beginners/data-extraction/project-setup$ /academy/scraping-basics-javascript/downloading-html?legacy-js-course=/data-extraction/project-setup permanent;
567+ rewrite ^/academy/web-scraping-for -beginners/data-extraction/save-to-csv$ /academy/scraping-basics-javascript/saving-data?legacy-js-course=/data-extraction/save-to-csv permanent;
568+ rewrite ^/academy/web-scraping-for -beginners/data-extraction/using-devtools$ /academy/scraping-basics-javascript/devtools-locating-elements?legacy-js-course=/data-extraction/using-devtools permanent;
569+ rewrite ^/academy/web-scraping-for -beginners/data-extraction$ /academy/scraping-basics-javascript/devtools-inspecting?legacy-js-course=/data-extraction permanent;
570+ rewrite ^/academy/web-scraping-for -beginners$ /academy/scraping-basics-javascript?legacy-js-course=/ permanent;
571571
572572 # Removed pages
573573 # GPT plugins were discontinued April 9th, 2024 - https://help.openai.com/en/articles/8988022-winding-down-the-chatgpt-plugins-beta
0 commit comments