Page not found after deploying angular app

I am new to netlify. And I am publishing an Angular App, however it gives a 404 when accessing the page. I do have a index.html on my project, and no significant errors are shown when deploying.

PLEASE help us help you by writing a good post!

Deploy log:
12:52:34 PM: Build ready to start
12:52:56 PM: build-image version: 122b31996ccaffd45d820a452d6227f8312110cc (focal)
12:52:56 PM: build-image tag: v4.5.3
12:52:56 PM: buildbot version: b0c97e610018064036a967f277f8af9d873774d1
12:52:57 PM: Building without cache
12:52:57 PM: Starting to prepare the repo for build
12:52:57 PM: No cached dependencies found. Cloning fresh repo
12:52:57 PM: git clone
12:52:59 PM: Preparing Git Reference refs/heads/main
12:52:59 PM: Parsing package.json dependencies
12:53:00 PM: Starting build script
12:53:00 PM: Installing dependencies
12:53:00 PM: Python version set to 2.7
12:53:01 PM: Downloading and installing node v16.14.0…
12:53:01 PM: Downloading https://nodejs.org/dist/v16.14.0/node-v16.14.0-linux-x64.tar.xz…
12:53:01 PM: Computing checksum with sha256sum
12:53:01 PM: Checksums matched!
12:53:04 PM: Now using node v16.14.0 (npm v8.3.1)
12:53:04 PM: Started restoring cached build plugins
12:53:04 PM: Finished restoring cached build plugins
12:53:04 PM: Attempting ruby version 2.7.2, read from environment
12:53:06 PM: Using ruby version 2.7.2
12:53:06 PM: Using PHP version 8.0
12:53:06 PM: Started restoring cached node modules
12:53:06 PM: Finished restoring cached node modules
12:53:06 PM: Installing NPM modules using NPM version 8.3.1
12:53:14 PM: npm WARN deprecated har-validator@5.1.5: this library is no longer supported
12:53:14 PM: npm WARN deprecated uuid@3.4.0: Please upgrade to version 7 or higher. Older versions may use Math.random() in certain circumstances, which is known to be problematic. See There’s Math.random(), and then there’s Math.random() Β· V8 for details.
12:53:15 PM: npm WARN deprecated source-map-resolve@0.6.0: See GitHub - lydell/source-map-resolve: [DEPRECATED] Resolve the source map and/or sources for a generated file.
12:53:15 PM: npm WARN deprecated request@2.88.2: request has been deprecated, see
12:53:30 PM: npm WARN deprecated tslint@6.1.3: TSLint has been deprecated in favor of ESLint. Please see https://github.com/palantir/tslint/issues/4534 for more information.
12:53:47 PM: added 1222 packages, and audited 1223 packages in 41s
12:53:47 PM: 98 packages are looking for funding
12:53:47 PM: run npm fund for details
12:53:47 PM: 2 moderate severity vulnerabilities
12:53:47 PM: To address all issues, run:
12:53:47 PM: npm audit fix
12:53:47 PM: Run npm audit for details.
12:53:47 PM: NPM modules installed
12:53:47 PM: Started restoring cached go cache
12:53:47 PM: Finished restoring cached go cache
12:53:47 PM: go version go1.16.5 linux/amd64
12:53:47 PM: go version go1.16.5 linux/amd64
12:53:47 PM: Installing missing commands
12:53:47 PM: Verify run directory
12:53:49 PM: ​
12:53:49 PM: ────────────────────────────────────────────────────────────────
12:53:49 PM: Netlify Build
12:53:49 PM: ────────────────────────────────────────────────────────────────
12:53:49 PM: ​
12:53:49 PM: ❯ Version
12:53:49 PM: @netlify/build 26.4.0
12:53:49 PM: ​
12:53:49 PM: ❯ Flags
12:53:49 PM: baseRelDir: true
12:53:49 PM: buildId: 6226466284b8ff1fbbd2859f
12:53:49 PM: deployId: 6226466284b8ff1fbbd285a1
12:53:49 PM: ​
12:53:49 PM: ❯ Current directory
12:53:49 PM: /opt/build/repo
12:53:49 PM: ​
12:53:49 PM: ❯ Config file
12:53:49 PM: No config file was defined: using default values.
12:53:49 PM: ​
12:53:49 PM: ❯ Context
12:53:49 PM: production
12:53:49 PM: ​
12:53:49 PM: ────────────────────────────────────────────────────────────────
12:53:49 PM: 1. Build command from Netlify app
12:53:49 PM: ────────────────────────────────────────────────────────────────
12:53:49 PM: ​
12:53:49 PM: $ ng build --configuration=production
12:53:51 PM: - Generating browser application bundles (phase: setup)…
12:53:53 PM: Processing legacy β€œView Engine” libraries:
12:53:53 PM: - @ionic-native/core [module/esm5] (GitHub - danielsogl/awesome-cordova-plugins: Native features for mobile apps built with Cordova/PhoneGap and open web technologies. Complete with TypeScript support.)
12:53:55 PM: - @ionic-native/splash-screen [module/esm5]
12:53:55 PM: - @ionic-native/status-bar [module/esm5]
12:53:57 PM: Encourage the library authors to publish an Ivy distribution.
12:54:37 PM: :heavy_check_mark: Browser application bundle generation complete.
12:54:37 PM: :heavy_check_mark: Browser application bundle generation complete.
12:54:37 PM: - Copying assets…
12:54:37 PM: :heavy_check_mark: Copying assets complete.
12:54:37 PM: - Generating index html…
12:54:37 PM: - Generating index html…
12:54:37 PM: 10 rules skipped due to selector errors:
12:54:37 PM: :host-context([dir=rtl]) .ion-float-start β†’ subselects_1.subselects[name] is not a function
12:54:37 PM: :host-context([dir=rtl]) .ion-float-end β†’ subselects_1.subselects[name] is not a function
12:54:37 PM: :host-context([dir=rtl]) .ion-float-sm-start β†’ subselects_1.subselects[name] is not a function
12:54:37 PM: :host-context([dir=rtl]) .ion-float-sm-end β†’ subselects_1.subselects[name] is not a function
12:54:37 PM: :host-context([dir=rtl]) .ion-float-md-start β†’ subselects_1.subselects[name] is not a function
12:54:37 PM: :host-context([dir=rtl]) .ion-float-md-end β†’ subselects_1.subselects[name] is not a function
12:54:37 PM: :host-context([dir=rtl]) .ion-float-lg-start β†’ subselects_1.subselects[name] is not a function
12:54:37 PM: :host-context([dir=rtl]) .ion-float-lg-end β†’ subselects_1.subselects[name] is not a function
12:54:37 PM: :host-context([dir=rtl]) .ion-float-xl-start β†’ subselects_1.subselects[name] is not a function
12:54:37 PM: :host-context([dir=rtl]) .ion-float-xl-end β†’ subselects_1.subselects[name] is not a function
12:54:37 PM: :heavy_check_mark: Index html generation complete.
12:54:37 PM: Initial Chunk Files | Names | Raw Size | Estimated Transfer Size
12:54:37 PM: main.a179b5d7cf0e90a8.js | main | 1.02 MB | 248.88 kB
12:54:37 PM: polyfills.0fd43a1a57033b65.js | polyfills | 36.22 kB | 11.52 kB
12:54:37 PM: styles.9f0eee9e0a606a21.css | styles | 21.99 kB | 3.55 kB
12:54:37 PM: runtime.8ae54bfa9f633df8.js | runtime | 4.78 kB | 2.29 kB
12:54:37 PM:
12:54:37 PM: | Initial Total | 1.08 MB | 266.24 kB
12:54:37 PM:
12:54:38 PM: Creating deploy upload records
12:54:37 PM: Lazy Chunk Files | Names | Raw Size | Estimated Transfer Size
12:54:37 PM: 2698.ded37cff5e9debad.js | swiper-bundle-28080340-js | 97.11 kB | 23.38 kB
12:54:37 PM: polyfills-core-js.b3eb16f0f64e9b8c.js | polyfills-core-js | 91.91 kB | 27.83 kB
12:54:37 PM: 4711.71d8fbef256a3981.js | - | 78.75 kB | 7.90 kB
12:54:37 PM: 1650.6dfa8e9c3b84ba39.js | - | 48.24 kB | 4.65 kB
12:54:37 PM: 4959.1eee1d27d4d5b8fb.js | - | 43.42 kB | 8.25 kB
12:54:37 PM: 53.7c0f8b3310834cbb.js | - | 41.65 kB | 8.78 kB
12:54:37 PM: 9325.f0af04b3b417dc56.js | - | 27.50 kB | 4.51 kB
12:54:37 PM: 5652.f611e7624d42bb7f.js | - | 23.81 kB | 4.27 kB
12:54:37 PM: 8628.0f80091174838366.js | - | 23.50 kB | 3.47 kB
12:54:37 PM: 3326.974bf05dfbd38cf1.js | - | 23.04 kB | 4.48 kB
12:54:37 PM: 5836.07df0f63a75d0923.js | - | 20.84 kB | 3.07 kB
12:54:37 PM: 2933.93b7c4bca0942905.js | - | 20.74 kB | 3.36 kB
12:54:37 PM: 8136.80b3ec6442ba6631.js | - | 20.18 kB | 4.40 kB
12:54:37 PM: 438.a06169259f56cb1a.js | - | 20.10 kB | 2.83 kB
12:54:37 PM: 1709.9adbba5df7603cf1.js | - | 18.63 kB | 3.69 kB
12:54:37 PM: 4174.54a87ba1651d800e.js | - | 18.47 kB | 1.55 kB
12:54:37 PM: polyfills-dom.3a5e3168052f1fc5.js | polyfills-dom | 18.05 kB | 5.04 kB
12:54:37 PM: 2773.febd2b5ed7970bd4.js | - | 15.61 kB | 3.95 kB
12:54:37 PM: 1217.88a063eeb39c2c36.js | - | 14.66 kB | 2.63 kB
12:54:37 PM: 7544.2032a641920f8fba.js | - | 14.29 kB | 2.40 kB
12:54:37 PM: 5168.0a0f509cc4125fe4.js | - | 12.97 kB | 2.28 kB
12:54:37 PM: 2073.45138ced2bf9d1bb.js | - | 12.91 kB | 2.02 kB
12:54:37 PM: 6560.98213b9f4af35a5b.js | - | 12.82 kB | 2.05 kB
12:54:37 PM: 5349.f288aaab5fb89af3.js | - | 11.42 kB | 3.57 kB
12:54:37 PM: 9654.2cf4da5ecccb97da.js | - | 11.32 kB | 2.59 kB
12:54:37 PM: 9824.03368c3da3b4b741.js | - | 11.16 kB | 1.38 kB
12:54:37 PM: 388.d6550d6575932e31.js | - | 10.82 kB | 1.74 kB
12:54:37 PM: 4330.5e93933aa1c67715.js | - | 10.47 kB | 3.51 kB
12:54:37 PM: 4432.068519ec65a523da.js | - | 9.99 kB | 2.28 kB
12:54:37 PM: 9016.fa9f5101743f0c27.js | - | 9.02 kB | 1.94 kB
12:54:37 PM: 657.e4ac080195fac1ee.js | - | 8.17 kB | 992 bytes
12:54:37 PM: 9922.1774f50c98c2f4a6.js | - | 7.81 kB | 1.64 kB
12:54:37 PM: 2289.bce74f2eafbfedba.js | - | 7.51 kB | 2.63 kB
12:54:37 PM: common.90a8943a11725c06.js | common | 7.09 kB | 1.72 kB
12:54:37 PM: 9536.947fa5f373fd4cc0.js | - | 6.38 kB | 1.29 kB
12:54:37 PM: 8034.39cc27e96305e51a.js | - | 5.85 kB | 1.35 kB
12:54:37 PM: 3583.86d7605a8b477dc3.js | - | 5.25 kB | 1.82 kB
12:54:37 PM: 7602.c8ba3d080b99774b.js | - | 5.00 kB | 1.44 kB
12:54:37 PM: 6708.fd32fb26a31721eb.js | input-shims-fef4a5fa-js | 4.44 kB | 1.68 kB
12:54:37 PM: 1536.371b51d49a3c90fe.js | - | 3.74 kB | 1.26 kB
12:54:37 PM: 4753.9a24da01e5fb77cb.js | - | 3.54 kB | 694 bytes
12:54:37 PM: 4902.d2d934f21132f649.js | home-home-module | 2.59 kB | 1.14 kB
12:54:37 PM: 6011.e8d178a5b0da5bcf.js | pages-todo-details-todo-details-module | 2.42 kB | 984 bytes
12:54:37 PM: 3802.97213a2e68c0a8ee.js | tap-click-c0be8677-js | 1.93 kB | 847 bytes
12:54:37 PM: 1033.4333f4e18bb0edd5.js | - | 1.40 kB | 574 bytes
12:54:37 PM: 2442.d9f26099077d7456.js | swipe-back-edc455e2-js | 593 bytes | 398 bytes
12:54:37 PM: 816.d42702c759b80ddd.js | status-tap-4087b8c4-js | 537 bytes | 333 bytes
12:54:37 PM: 4376.c132a634ce705a11.js | - | 369 bytes | 243 bytes
12:54:37 PM: 3648.345af1fe37662d79.js | - | 236 bytes | 197 bytes
12:54:37 PM: 3804.d5200bfa9e84fe03.js | - | 231 bytes | 171 bytes
12:54:37 PM: 9434.9019b6e1d4f43946.js | - | 231 bytes | 164 bytes
12:54:37 PM: 1118.e65f123502671053.js | - | 229 bytes | 166 bytes
12:54:37 PM: 2349.3735a78598f6f572.js | - | 229 bytes | 169 bytes
12:54:37 PM: 6120.6a69bd1243fc4364.js | - | 229 bytes | 172 bytes
12:54:37 PM: 8939.82c5fdb1cf47d2f2.js | - | 169 bytes | 145 bytes
12:54:37 PM: 4908.e4b8a0e2c87baf81.js | - | 168 bytes | 149 bytes
12:54:37 PM: 9958.b9628740b83eeae2.js | - | 166 bytes | 143 bytes
12:54:37 PM:
12:54:37 PM: Build at: 2022-03-07T17:54:37.539Z - Hash: c6e52d419308c678 - Time: 45454ms
12:54:37 PM: ​
12:54:37 PM: (build.command completed in 48.4s)
12:54:37 PM: ​
12:54:37 PM: ────────────────────────────────────────────────────────────────
12:54:37 PM: 2. Deploy site
12:54:37 PM: ────────────────────────────────────────────────────────────────
12:54:37 PM: ​
12:54:37 PM: Starting to deploy site from β€˜β€™
12:54:41 PM: Starting post processing
12:54:38 PM: Creating deploy tree asynchronously
12:54:41 PM: Post processing - HTML
12:54:42 PM: Post processing - header rules
12:54:42 PM: Post processing - redirect rules
12:54:42 PM: Post processing done
12:54:45 PM: Site is live :sparkles:
12:54:46 PM: 0 new files to upload
12:54:46 PM: 0 new functions to upload
12:54:46 PM: Site deploy was successfully initiated
12:54:46 PM: ​
12:54:46 PM: (Deploy site completed in 8.4s)
12:54:46 PM: ​
12:54:46 PM: ────────────────────────────────────────────────────────────────
12:54:46 PM: Netlify Build Complete
12:54:46 PM: ────────────────────────────────────────────────────────────────
12:54:46 PM: ​
12:54:46 PM: (Netlify Build completed in 56.9s)
12:54:46 PM: Caching artifacts
12:54:46 PM: Started saving node modules
12:54:46 PM: Finished saving node modules
12:54:46 PM: Started saving build plugins
12:54:46 PM: Finished saving build plugins
12:54:46 PM: Started saving pip cache
12:54:46 PM: Finished saving pip cache
12:54:46 PM: Started saving emacs cask dependencies
12:54:46 PM: Finished saving emacs cask dependencies
12:54:46 PM: Started saving maven dependencies
12:54:46 PM: Finished saving maven dependencies
12:54:46 PM: Started saving boot dependencies
12:54:46 PM: Finished saving boot dependencies
12:54:46 PM: Started saving rust rustup cache
12:54:46 PM: Finished saving rust rustup cache
12:54:46 PM: Started saving go dependencies
12:54:46 PM: Finished saving go dependencies
12:54:48 PM: Build script success
12:55:22 PM: Finished processing build request in 2m26.077335201s
The better the post - the faster the answer.

Hey @Waldulmer

This line from the log shows there is no publish directory set. I can see (because you have published the source) in the angular.json for the project the outputPath is set to www so www is what you need to set as the publish directory in the Build Settings via the UI.

Hi coelmay,

thank you very much. Your suggestion is appreciated. It works now.

1 Like