Firebase

How to set up Firebase Hosting redirects and rewrites?

Discover the steps to configure Firebase Hosting redirects and rewrites with this simple guide, improving your site’s navigation and user experience.

Developer profile skeleton
a developer thinking

Overview

Setting up Firebase Hosting redirects and rewrites lets you manage URL handling and routing in your Firebase-hosted web app with ease. Redirects help move traffic from one URL to another, crucial for maintaining SEO when URLs change or sites migrate. Rewrites, meanwhile, let you serve dynamic content by directing certain URLs to other places, like Cloud Functions or other parts of your app. This setup requires tweaking your firebase.json file to set specific routing rules, ensuring users have a smooth experience and your content gets delivered effectively.

Get a Free No-Code Consultation
Meet with Will, CEO at Bootstrapped to get a Free No-Code Consultation
Book a Call
Will Hawkins
CEO at Bootstrapped

How to set up Firebase Hosting redirects and rewrites?

Step 1: Set Up Firebase Hosting in Your Project

  1. First things first, make sure you've got the Firebase CLI installed. If not, just run:
    ```bash
    npm install -g firebase-tools
    ```
  2. Next, log in to Firebase with:
    ```bash
    firebase login
    ```
  3. Now, head over to your project's root directory in the terminal.
  4. Time to initialize Firebase Hosting in your project:
    ```bash
    firebase init hosting
    ```
    Follow the on-screen prompts to pick your project and set up the options.

Step 2: Open `firebase.json` Configuration File

firebase.json is right there at the root of your project directory. This file holds all the Firebase Hosting configuration details.

Step 3: Add Redirects

  1. In firebase.json, find the Hosting section.
  2. Add the redirects array inside the hosting configuration:
    ```json
    {
    "hosting": {
    "public": "public",
    "redirects": [
    {
    "source": "/old-url",
    "destination": "/new-url",
    "type": 301
    },
    {
    "source": "/another-old-url",
    "destination": "/another-new-url",
    "type": 302
    }
    ]
    }
    }
    ```
    • source: The old URL path you want to redirect.
    • destination: The new URL path where the traffic should go.
    • type: Choose 301 for a permanent redirect or 302 for a temporary one.

Step 4: Add Rewrites

  1. In the same hosting section in firebase.json, add the rewrites array:
    ```json
    {
    "hosting": {
    "public": "public",
    "rewrites": [
    {
    "source": "/app/**",
    "destination": "/index.html"
    },
    {
    "source": "**",
    "function": "app"
    }
    ]
    }
    }
    ```
    • source: The URL pattern to match.
    • destination: Used to serve a specific file, like index.html.
    • function: If you're using Cloud Functions, specify the function to handle the request.

Step 5: Deploy Your Changes

  1. Save the changes you made in firebase.json.
  2. Deploy the updates to Firebase Hosting:
    ```bash
    firebase deploy --only hosting
    ```

After deployment, Firebase will serve your configured redirects and rewrites as specified in firebase.json.

Explore more Firebase tutorials

Complete Guide to Firebase: Tutorials, Tips, and Best Practices

Explore our Firebase tutorials directory - an essential resource for learning how to create, deploy and manage robust server-side applications with ease and efficiency.

Why are companies choosing Bootstrapped?

40-60%

Faster with no-code

Nocode tools allow us to develop and deploy your new application 40-60% faster than regular app development methods.

90 days

From idea to MVP

Save time, money, and energy with an optimized hiring process. Access a pool of experts who are sourced, vetted, and matched to meet your precise requirements.

1 283 apps

built by our developers

With the Bootstrapped platform, managing projects and developers has never been easier.

hero graphic

Our capabilities

Bootstrapped offers a comprehensive suite of capabilities tailored for startups. Our expertise spans web and mobile app development, utilizing the latest technologies to ensure high performance and scalability. The team excels in creating intuitive user interfaces and seamless user experiences. We employ agile methodologies for flexible and efficient project management, ensuring timely delivery and adaptability to changing requirements. Additionally, Bootstrapped provides continuous support and maintenance, helping startups grow and evolve their digital products. Our services are designed to be affordable and high-quality, making them an ideal partner for new ventures.

Engineered for you

1

Fast Development: Bootstrapped specializes in helping startup founders build web and mobile apps quickly, ensuring a fast go-to-market strategy.

2

Tailored Solutions: The company offers customized app development, adapting to specific business needs and goals, which ensures your app stands out in the competitive market.

3

Expert Team: With a team of experienced developers and designers, Bootstrapped ensures high-quality, reliable, and scalable app solutions.

4

Affordable Pricing: Ideal for startups, Bootstrapped offers cost-effective development services without compromising on quality.

5

Supportive Partnership: Beyond development, Bootstrapped provides ongoing support and consultation, fostering long-term success for your startup.

6

Agile Methodology: Utilizing agile development practices, Bootstrapped ensures flexibility, iterative progress, and swift adaptation to changes, enhancing project success.

Yes, if you can dream it, we can build it.