Bird
Raised Fist0
Firebasecloud~10 mins

Why Firebase Hosting serves web apps - Test Your Understanding

Choose your learning style10 modes available
Practice - 5 Tasks
Answer the questions below
1fill in blank
easy

Complete the code to initialize Firebase Hosting configuration.

Firebase
firebase init [1]
Drag options to blanks, or click blank then click option'
Astorage
Bfunctions
Cdatabase
Dhosting
Attempts:
3 left
💡 Hint
Common Mistakes
Choosing 'functions' instead of 'hosting' during initialization.
Confusing database or storage with hosting service.
2fill in blank
medium

Complete the code to deploy your web app to Firebase Hosting.

Firebase
firebase deploy --only [1]
Drag options to blanks, or click blank then click option'
Afunctions
Bhosting
Cdatabase
Dstorage
Attempts:
3 left
💡 Hint
Common Mistakes
Deploying functions instead of hosting.
Using database or storage in the deploy command.
3fill in blank
hard

Fix the error in the Firebase Hosting configuration file to serve the app correctly.

Firebase
{
  "hosting": {
    "public": "[1]",
    "ignore": ["firebase.json", "**/.*", "**/node_modules/**"]
  }
}
Drag options to blanks, or click blank then click option'
Apublic
Bsrc
Cdist
Dapp
Attempts:
3 left
💡 Hint
Common Mistakes
Setting 'src' or 'dist' instead of 'public' in the config.
Using a folder name that does not exist or is incorrect.
4fill in blank
hard

Fill both blanks to configure Firebase Hosting to serve a single-page app correctly.

Firebase
{
  "hosting": {
    "public": "[1]",
    "rewrites": [
      { "source": "**", "destination": "[2]" }
    ]
  }
}
Drag options to blanks, or click blank then click option'
Apublic
Bindex.html
Capp.html
Dsrc
Attempts:
3 left
💡 Hint
Common Mistakes
Using 'src' or 'app.html' instead of 'public' and 'index.html'.
Not setting rewrites correctly for SPA routing.
5fill in blank
hard

Fill all three blanks to create a Firebase Hosting configuration that serves a web app with caching and SPA support.

Firebase
{
  "hosting": {
    "public": "[1]",
    "ignore": ["firebase.json", "**/.*", "**/node_modules/**"],
    "rewrites": [
      { "source": "**", "destination": "[2]" }
    ],
    "headers": [
      {
        "source": "**/*.@(js|css)",
        "headers": [
          { "key": "Cache-Control", "value": "[3]" }
        ]
      }
    ]
  }
}
Drag options to blanks, or click blank then click option'
Apublic
Bindex.html
Cmax-age=31536000, immutable
Dno-cache
Attempts:
3 left
💡 Hint
Common Mistakes
Using 'no-cache' which disables caching for static files.
Incorrect folder names or rewrite destinations.

Practice

(1/5)
1. Why does Firebase Hosting serve web apps over HTTPS by default?
easy
A. To make the website load slower
B. To disable images from loading
C. To block users from accessing the app
D. To keep the connection secure and protect user data

Solution

  1. Step 1: Understand HTTPS purpose

    HTTPS encrypts data between the user and the server to keep it safe from attackers.
  2. Step 2: Apply to Firebase Hosting

    Firebase Hosting uses HTTPS by default to protect users visiting your web app.
  3. Final Answer:

    To keep the connection secure and protect user data -> Option D
  4. Quick Check:

    HTTPS = Secure connection [OK]
Hint: HTTPS means secure connection, always used by Firebase Hosting [OK]
Common Mistakes:
  • Thinking HTTPS slows down the site
  • Believing HTTPS blocks users
  • Confusing HTTPS with disabling images
2. Which file does Firebase Hosting usually serve first when loading a single-page web app?
easy
A. index.html
B. style.css
C. main.js
D. firebase.json

Solution

  1. Step 1: Identify the entry point for web apps

    Single-page apps start by loading the main HTML file, which is usually index.html.
  2. Step 2: Confirm Firebase Hosting behavior

    Firebase Hosting serves index.html first to load the app shell and then loads scripts and styles.
  3. Final Answer:

    index.html -> Option A
  4. Quick Check:

    First file loaded = index.html [OK]
Hint: Web apps start with index.html file [OK]
Common Mistakes:
  • Choosing JavaScript or CSS files as first load
  • Confusing config files like firebase.json as entry
  • Not knowing the role of index.html
3. Given this Firebase Hosting rewrite rule in firebase.json:
{
  "hosting": {
    "rewrites": [
      { "source": "**", "destination": "/index.html" }
    ]
  }
}
What happens when a user visits /profile in a single-page app?
medium
A. The server returns a 404 error because /profile does not exist
B. The server serves the index.html file so the app can handle the route
C. The server redirects the user to the homepage URL
D. The server serves a blank page

Solution

  1. Step 1: Understand the rewrite rule

    The rule sends all requests (**) to /index.html, regardless of the URL path.
  2. Step 2: Apply to /profile URL

    When user visits /profile, Firebase Hosting serves index.html, letting the app's JavaScript handle the route.
  3. Final Answer:

    The server serves the index.html file so the app can handle the route -> Option B
  4. Quick Check:

    Rewrite all URLs to index.html = The server serves the index.html file so the app can handle the route [OK]
Hint: Rewrite '**' to index.html serves all app routes [OK]
Common Mistakes:
  • Expecting 404 error for app routes
  • Thinking server redirects to homepage
  • Assuming blank page is served
4. A developer sets up Firebase Hosting but their single-page app shows a 404 error on routes like /dashboard. What is the likely fix?
medium
A. Add a rewrite rule in firebase.json to send all routes to /index.html
B. Remove the index.html file from the hosting folder
C. Disable HTTPS in Firebase Hosting settings
D. Change the app to use multiple HTML files for each route

Solution

  1. Step 1: Identify cause of 404 on app routes

    Without rewrite rules, Firebase Hosting looks for actual files matching the URL and returns 404 if missing.
  2. Step 2: Apply rewrite rule fix

    Adding a rewrite rule to send all routes to /index.html lets the app handle routing and prevents 404 errors.
  3. Final Answer:

    Add a rewrite rule in firebase.json to send all routes to /index.html -> Option A
  4. Quick Check:

    Rewrite rule fixes 404 on SPA routes [OK]
Hint: Rewrite all routes to index.html to fix SPA 404 errors [OK]
Common Mistakes:
  • Deleting index.html file
  • Disabling HTTPS thinking it helps
  • Using multiple HTML files instead of SPA routing
5. You want your Firebase Hosting to serve a React single-page app that uses client-side routing. Which configuration ensures all URLs load your app correctly?
hard
A. Disable rewrites and rely on default file serving
B. Upload separate HTML files for each route like /about.html and /contact.html
C. Set a rewrite rule in firebase.json to send all requests to /index.html
D. Use HTTP instead of HTTPS to avoid routing issues

Solution

  1. Step 1: Understand React SPA routing needs

    React SPA uses client-side routing, so all URLs must load the same index.html to let JavaScript handle routes.
  2. Step 2: Configure Firebase Hosting rewrites

    Adding a rewrite rule sending all requests to /index.html ensures the app loads correctly on any URL.
  3. Final Answer:

    Set a rewrite rule in firebase.json to send all requests to /index.html -> Option C
  4. Quick Check:

    Rewrite all URLs to index.html for SPA routing [OK]
Hint: Rewrite all URLs to index.html for React SPA [OK]
Common Mistakes:
  • Uploading multiple HTML files for SPA routes
  • Disabling rewrites causing 404 errors
  • Switching to HTTP thinking it fixes routing
Recommended

Ready to prove it?

Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

10 questions~5 mineasy hard