First of all thank you for this awesome blog. It deployed successfully to Netlify, but recently I switched to Cloudflare but a problem remains; anyone managed to deploy on Cloudflare pages? I managed to get a successfull build, but the website returns a 404. Any ideas?
<pre class="c_sn c_bv c_uj c_jj c_uh c_ui c_dd c_vr c_zi c_zj c_zk c_fa c_fb c_yy c_bx c_zl" style="box-sizing: border-box; border-radius: 0px; color: rgb(49, 49, 49); display: block; font-size: 12px; margin: 0px; overflow: auto; padding: 16px 32px; width: 1124.8px; background-color: rgb(242, 242, 242); border-width: 0px 0px 1px; border-style: solid; border-color: rgb(217, 217, 217); border-image: initial; font-family: monaco, courier, monospace; height: 500px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: start; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial;">
01:37:06.255 | Cloning repository...
-- | --
01:37:07.405 | From https://github.com/myurtsev/EA-Nextjs-Blog
01:37:07.406 | * branch 4a1bcc5f11aa4ca839c45ee69d2ff1ae881b99bb -> FETCH_HEAD
01:37:07.406 | ย
01:37:07.454 | HEAD is now at 4a1bcc5 custom build command
01:37:07.455 | ย
01:37:07.547 | ย
01:37:07.548 | Using v2 root directory strategy
01:37:07.577 | Success: Finished cloning repository files
01:37:08.689 | Detected the following tools from environment: [email protected], [email protected]
01:37:08.689 | Installing nodejs 16.18.0
01:37:09.783 | Trying to update node-build... ok
01:37:10.010 | Downloading node-v16.18.0-linux-x64.tar.gz...
01:37:10.011 | -> https://nodejs.org/dist/v16.18.0/node-v16.18.0-linux-x64.tar.gz
01:37:11.493 | ย
01:37:11.493 | WARNING: node-v16.18.0-linux-x64 is in LTS Maintenance mode and nearing its end of life.
01:37:11.493 | It only receives *critical* security updates, *critical* bug fixes and documentation updates.
01:37:11.493 | ย
01:37:11.493 | Installing node-v16.18.0-linux-x64...
01:37:11.823 | Installed node-v16.18.0-linux-x64 to /opt/buildhome/.asdf/installs/nodejs/16.18.0
01:37:11.824 | ย
01:37:13.035 | Installing project dependencies: npm clean-install --progress=false
01:37:14.149 | npm WARN EBADENGINE Unsupported engine {
01:37:14.150 | npm WARN EBADENGINE package: '[email protected]',
01:37:14.150 | npm WARN EBADENGINE required: { node: '>= 18' },
01:37:14.150 | npm WARN EBADENGINE current: { node: 'v16.18.0', npm: '8.19.2' }
01:37:14.150 | npm WARN EBADENGINE }
01:37:19.663 | npm WARN deprecated @npmcli/[email protected]: This functionality has been moved to @npmcli/fs
01:38:58.299 | ย
01:38:58.299 | > prepare
01:38:58.300 | > husky install
01:38:58.300 | ย
01:38:58.380 | husky - Git hooks installed
01:38:58.418 | ย
01:38:58.419 | added 728 packages, and audited 730 packages in 2m
01:38:58.419 | ย
01:38:58.419 | 162 packages are looking for funding
01:38:58.419 | run `npm fund` for details
01:38:58.465 | ย
01:38:58.466 | 6 vulnerabilities (2 low, 4 moderate)
01:38:58.466 | ย
01:38:58.466 | To address issues that do not require attention, run:
01:38:58.466 | npm audit fix
01:38:58.466 | ย
01:38:58.466 | To address all issues, run:
01:38:58.467 | npm audit fix --force
01:38:58.467 | ย
01:38:58.467 | Run `npm audit` for details.
01:38:58.481 | Executing user command: npm run build && rm -rf .next/cache
01:38:59.125 | ย
01:38:59.125 | > prebuild
01:38:59.126 | > npx upload-notion-images-to-cloudinary
01:38:59.126 | ย
01:38:59.883 | [upload-notion-images-to-cloudinary][DEBUG] Fetching pages of database 74ff571f6c72467db4403d0f16936389
01:39:01.817 | [upload-notion-images-to-cloudinary][DEBUG] 1690af00-c625-4701-a82c-9530a309f707: cover image already not hosted in Notion
01:39:01.818 | [upload-notion-images-to-cloudinary][DEBUG] 1690af00-c625-4701-a82c-9530a309f707: fetching image blocks...
01:39:02.003 | [upload-notion-images-to-cloudinary][DEBUG] Found 0
01:39:02.004 | [upload-notion-images-to-cloudinary][DEBUG] cb55192e-d4cb-4738-b985-3d2bba2dc74f: cover image already not hosted in Notion
01:39:02.004 | [upload-notion-images-to-cloudinary][DEBUG] cb55192e-d4cb-4738-b985-3d2bba2dc74f: fetching image blocks...
01:39:02.095 | [upload-notion-images-to-cloudinary][DEBUG] Found 0
01:39:02.095 | [upload-notion-images-to-cloudinary][DEBUG] bcef44bc-43de-4806-9a03-676e90a18e06: cover image already not hosted in Notion
01:39:02.095 | [upload-notion-images-to-cloudinary][DEBUG] bcef44bc-43de-4806-9a03-676e90a18e06: fetching image blocks...
01:39:02.218 | [upload-notion-images-to-cloudinary][DEBUG] Found 0
01:39:02.219 | [upload-notion-images-to-cloudinary][DEBUG] 41cfbcee-ffda-4b15-9da1-c908d17a2512: cover image already not hosted in Notion
01:39:02.219 | [upload-notion-images-to-cloudinary][DEBUG] 41cfbcee-ffda-4b15-9da1-c908d17a2512: fetching image blocks...
01:39:03.129 | [upload-notion-images-to-cloudinary][DEBUG] Found 0
01:39:03.129 | [upload-notion-images-to-cloudinary][DEBUG] 694939b6-d1c4-402c-8741-e0402b26789e: cover image already not hosted in Notion
01:39:03.129 | [upload-notion-images-to-cloudinary][DEBUG] 694939b6-d1c4-402c-8741-e0402b26789e: fetching image blocks...
01:39:03.205 | [upload-notion-images-to-cloudinary][DEBUG] Found 0
01:39:03.205 | [upload-notion-images-to-cloudinary][DEBUG] 5fbccb7b-9c3f-44f2-82c6-298db602c015: cover image already not hosted in Notion
01:39:03.205 | [upload-notion-images-to-cloudinary][DEBUG] 5fbccb7b-9c3f-44f2-82c6-298db602c015: fetching image blocks...
01:39:03.395 | [upload-notion-images-to-cloudinary][DEBUG] Found 0
01:39:03.395 | [upload-notion-images-to-cloudinary][DEBUG] d1df3b68-f6cf-4e69-bfa3-5d0d4f12e99e: cover image already not hosted in Notion
01:39:03.395 | [upload-notion-images-to-cloudinary][DEBUG] d1df3b68-f6cf-4e69-bfa3-5d0d4f12e99e: fetching image blocks...
01:39:03.485 | [upload-notion-images-to-cloudinary][DEBUG] Found 0
01:39:03.486 | [upload-notion-images-to-cloudinary][DEBUG] fb0db01b-76b8-46c5-b907-9114099100e6: cover image already not hosted in Notion
01:39:03.486 | [upload-notion-images-to-cloudinary][DEBUG] fb0db01b-76b8-46c5-b907-9114099100e6: fetching image blocks...
01:39:03.627 | [upload-notion-images-to-cloudinary][DEBUG] Found 0
01:39:03.628 | [upload-notion-images-to-cloudinary][DEBUG] End
01:39:03.643 | ย
01:39:03.644 | > build
01:39:03.644 | > next build
01:39:03.644 | ย
01:39:04.044 | - info Loaded env from /opt/buildhome/repo/.env.production
01:39:04.045 | - info Loaded env from /opt/buildhome/repo/.env
01:39:04.283 | - warn No build cache found. Please configure build caching for faster rebuilds. Read more: https://nextjs.org/docs/messages/no-cache
01:39:04.288 | Attention: Next.js now collects completely anonymous telemetry regarding usage.
01:39:04.288 | This information is used to shape Next.js' roadmap and prioritize features.
01:39:04.288 | You can learn more, including how to opt-out if you'd not like to participate in this anonymous program, by visiting the following URL:
01:39:04.289 | https://nextjs.org/telemetry
01:39:04.289 | ย
01:39:04.396 | - info Linting and checking validity of types...
01:39:07.060 | ย
01:39:07.060 | ./pages/api/og.tsx
01:39:07.060 | 193:23 Warning: Using `<img>` could result in slower LCP and higher bandwidth. Consider using `<Image />` from `next/image` to automatically optimize images. This may incur additional usage or cost from your provider. See: https://nextjs.org/docs/messages/no-img-element @next/next/no-img-element
01:39:07.060 | ย
01:39:07.060 | ./pages/blog/[slug].tsx
01:39:07.060 | 292:15 Warning: img elements must have an alt prop, either with meaningful text, or an empty string for decorative images. jsx-a11y/alt-text
01:39:07.061 | 292:15 Warning: Using `<img>` could result in slower LCP and higher bandwidth. Consider using `<Image />` from `next/image` to automatically optimize images. This may incur additional usage or cost from your provider. See: https://nextjs.org/docs/messages/no-img-element @next/next/no-img-element
01:39:07.061 | ย
01:39:07.061 | ./pages/blog/index.tsx
01:39:07.061 | 54:15 Warning: img elements must have an alt prop, either with meaningful text, or an empty string for decorative images. jsx-a11y/alt-text
01:39:07.061 | 54:15 Warning: Using `<img>` could result in slower LCP and higher bandwidth. Consider using `<Image />` from `next/image` to automatically optimize images. This may incur additional usage or cost from your provider. See: https://nextjs.org/docs/messages/no-img-element @next/next/no-img-element
01:39:07.061 | ย
01:39:07.062 | ./components/CustomLink.tsx
01:39:07.062 | 46:5 Warning: React Hook useCallback has a missing dependency: 'plausible'. Either include it or remove the dependency array. react-hooks/exhaustive-deps
01:39:07.062 | ย
01:39:07.062 | ./lib/hooks/useArticleReactions.ts
01:39:07.062 | 51:6 Warning: React Hook useEffect has a missing dependency: 'getReactionsFromLocalStorage'. Either include it or remove the dependency array. react-hooks/exhaustive-deps
01:39:07.062 | ย
01:39:07.063 | info - Need to disable some ESLint rules? Learn more here: https://nextjs.org/docs/basic-features/eslint#disabling-rules
01:39:09.391 | - info Creating an optimized production build...
01:39:09.577 | - warn You are using an experimental edge runtime, the API might change.
01:39:25.346 | <w> [webpack.cache.PackFileCacheStrategy] Serializing big strings (830kiB) impacts deserialization performance (consider using Buffer instead and decode when needed)
01:39:31.574 | <w> [webpack.cache.PackFileCacheStrategy] Skipped not serializable cache item 'Compilation/modules\|/opt/buildhome/repo/node_modules/next/dist/build/webpack/loaders/css-loader/src/index.js??ruleSet[1].rules[1].oneOf[13].use[1]!/opt/buildhome/repo/node_modules/next/dist/build/webpack/loaders/postcss-loader/src/index.js??ruleSet[1].rules[1].oneOf[13].use[2]!/opt/buildhome/repo/styles/globals.css': No serializer registered for Warning
01:39:31.574 | <w> while serializing webpack/lib/cache/PackFileCacheStrategy.PackContentItems -> webpack/lib/NormalModule -> Array { 3 items } -> webpack/lib/ModuleWarning -> Warning
01:39:32.191 | - warn Compiled with warnings
01:39:32.191 | ย
01:39:32.192 | ./styles/globals.css.webpack[javascript/auto]!=!./node_modules/next/dist/build/webpack/loaders/css-loader/src/index.js??ruleSet[1].rules[1].oneOf[13].use[1]!./node_modules/next/dist/build/webpack/loaders/postcss-loader/src/index.js??ruleSet[1].rules[1].oneOf[13].use[2]!./styles/globals.css
01:39:32.192 | Warning
01:39:32.192 | ย
01:39:32.192 | (1:1) autoprefixer: Replace color-adjust to print-color-adjust. The color-adjust shorthand is currently deprecated.
01:39:32.192 | ย
01:39:32.192 | Import trace for requested module:
01:39:32.193 | ./styles/globals.css.webpack[javascript/auto]!=!./node_modules/next/dist/build/webpack/loaders/css-loader/src/index.js??ruleSet[1].rules[1].oneOf[13].use[1]!./node_modules/next/dist/build/webpack/loaders/postcss-loader/src/index.js??ruleSet[1].rules[1].oneOf[13].use[2]!./styles/globals.css
01:39:32.193 | ./styles/globals.css
01:39:32.193 | ย
01:39:32.193 | ./styles/globals.css.webpack[javascript/auto]!=!./node_modules/next/dist/build/webpack/loaders/css-loader/src/index.js??ruleSet[1].rules[1].oneOf[13].use[1]!./node_modules/next/dist/build/webpack/loaders/postcss-loader/src/index.js??ruleSet[1].rules[1].oneOf[13].use[2]!./styles/globals.css
01:39:32.193 | Warning
01:39:32.193 | ย
01:39:32.193 | (1:1) autoprefixer: Replace color-adjust to print-color-adjust. The color-adjust shorthand is currently deprecated.
01:39:32.194 | ย
01:39:32.194 | Import trace for requested module:
01:39:32.194 | ./styles/globals.css.webpack[javascript/auto]!=!./node_modules/next/dist/build/webpack/loaders/css-loader/src/index.js??ruleSet[1].rules[1].oneOf[13].use[1]!./node_modules/next/dist/build/webpack/loaders/postcss-loader/src/index.js??ruleSet[1].rules[1].oneOf[13].use[2]!./styles/globals.css
01:39:32.194 | ./styles/globals.css
01:39:32.194 | ย
01:39:32.194 | ./styles/globals.css.webpack[javascript/auto]!=!./node_modules/next/dist/build/webpack/loaders/css-loader/src/index.js??ruleSet[1].rules[1].oneOf[13].use[1]!./node_modules/next/dist/build/webpack/loaders/postcss-loader/src/index.js??ruleSet[1].rules[1].oneOf[13].use[2]!./styles/globals.css
01:39:32.194 | - info Collecting page data...
01:39:32.195 | Warning
01:39:32.195 | ย
01:39:32.195 | (1:1) autoprefixer: Replace color-adjust to print-color-adjust. The color-adjust shorthand is currently deprecated.
01:39:32.195 | ย
01:39:32.196 | Import trace for requested module:
01:39:32.196 | ./styles/globals.css.webpack[javascript/auto]!=!./node_modules/next/dist/build/webpack/loaders/css-loader/src/index.js??ruleSet[1].rules[1].oneOf[13].use[1]!./node_modules/next/dist/build/webpack/loaders/postcss-loader/src/index.js??ruleSet[1].rules[1].oneOf[13].use[2]!./styles/globals.css
01:39:32.197 | ./styles/globals.css
01:39:32.197 | ย
01:39:32.197 | ./node_modules/next/dist/build/webpack/loaders/next-edge-function-loader.js?absolutePagePath=private-next-pages%2Fapi%2Fviews%2F%5Bslug%5D.ts&page=%2Fapi%2Fviews%2F%5Bslug%5D&rootDir=%2Fopt%2Fbuildhome%2Frepo&preferredRegion=&middlewareConfig=e30%3D!
01:39:32.197 | Attempted import error: 'private-next-pages/api/views/[slug].ts' does not contain a default export (imported as 'handler').
01:39:32.197 | ย
01:39:32.197 | ./node_modules/next/dist/build/webpack/loaders/next-edge-function-loader.js?absolutePagePath=private-next-pages%2Fapi%2Fviews%2F%5Bslug%5D.ts&page=%2Fapi%2Fviews%2F%5Bslug%5D&rootDir=%2Fopt%2Fbuildhome%2Frepo&preferredRegion=&middlewareConfig=e30%3D!
01:39:32.198 | Attempted import error: 'private-next-pages/api/views/[slug].ts' does not contain a default export (imported as 'handler').
01:39:32.198 | ย
01:39:33.863 | "getStaticProps" is not yet supported fully with "experimental-edge", detected on /blog/[slug]
01:39:44.220 | - info Generating static pages (0/15)
01:39:45.025 | - info Generating static pages (3/15)
01:39:45.545 | - info Generating static pages (7/15)
01:39:45.751 | - info Generating static pages (11/15)
01:40:04.389 | - info Generating static pages (15/15)
01:40:04.938 | - info Finalizing page optimization...
01:40:04.950 | ย
01:40:04.976 | Route (pages) Size First Load JS
01:40:04.977 | โ โ / (ISR: 30 Seconds) (1541 ms) 3.92 kB 170 kB
01:40:04.977 | โ /_app 0 B 106 kB
01:40:04.977 | โ โ /404 182 B 106 kB
01:40:04.977 | โ โ /api/issues 0 B 106 kB
01:40:04.977 | โ โ /api/link-preview 0 B 106 kB
01:40:04.978 | โ โ /api/og 0 B 106 kB
01:40:04.978 | โ โ /api/preview 0 B 106 kB
01:40:04.978 | โ โ /api/reactions/[slug] 0 B 106 kB
01:40:04.978 | โ โ /api/sitemap 0 B 106 kB
01:40:04.978 | โ โ /api/subscribe 0 B 106 kB
01:40:04.978 | โ โ /api/subscribers 0 B 106 kB
01:40:04.979 | โ โ /api/views/[slug] 0 B 106 kB
01:40:04.979 | โ โ /blog (ISR: 30 Seconds) (1177 ms) 1.54 kB 167 kB
01:40:04.979 | โ โ /blog/[slug] 38.3 kB 204 kB
01:40:04.979 | โ โ /blog/categories/[tag] (ISR: 30 Seconds) (28367 ms) 1.79 kB 168 kB
01:40:04.980 | โ /blog/categories/x (18879 ms)
01:40:04.981 | โ [+4 more paths] (avg 412 ms)
01:40:04.981 | + First Load JS shared by all 118 kB
01:40:04.981 | โ chunks/framework-305cb810cde7afac.js 45.2 kB
01:40:04.981 | โ chunks/main-70e147c70032ac43.js 32.4 kB
01:40:04.981 | โ chunks/pages/_app-72d5d89d510a7e14.js 26.3 kB
01:40:04.981 | โ chunks/webpack-727be64afcc6f8ef.js 1.77 kB
01:40:04.981 | โ css/87bda39ba21e5051.css 11.9 kB
01:40:04.982 | ย
01:40:04.982 | ฦ Middleware 32.9 kB
01:40:04.982 | ย
01:40:04.982 | โ (Streaming) server-side renders with streaming (uses React 18 SSR streaming or Server Components)
01:40:04.982 | โ (Static) automatically rendered as static HTML (uses no initial props)
01:40:04.982 | โ (SSG) automatically generated as static HTML + JSON (uses getStaticProps)
01:40:04.982 | (ISR) incremental static regeneration (uses revalidate in getStaticProps)
01:40:04.983 | ย
01:40:05.108 | Finished
01:40:05.108 | Note: No functions dir at /functions found. Skipping.
01:40:05.109 | Validating asset output directory
01:40:06.018 | Deploying your site to Cloudflare's global network...
01:40:08.524 | Uploading... (82/118)
01:40:10.058 | Uploading... (94/118)
01:40:10.292 | Uploading... (106/118)
01:40:11.394 | Uploading... (118/118)
01:40:11.395 | โจ Success! Uploaded 36 files (82 already uploaded) (3.20 sec)
01:40:11.395 | ย
01:40:11.848 | โจ Upload complete!
01:40:14.306 | Success: Assets published!
01:40:15.765 | Success: Your site was deployed!
</pre>