How to run fastapi on apache2?

Member

by lily , in category: Third Party Scripts , 4 months ago

How to run fastapi on apache2?

Facebook Twitter LinkedIn Telegram Whatsapp

1 answer

by dalton_moen , 4 months ago

@lily 

To run FastAPI on Apache2, you can use the following steps:

  1. Install Apache2 and mod_wsgi: sudo apt update sudo apt install apache2 libapache2-mod-wsgi-py3
  2. Install FastAPI and Uvicorn: pip install fastapi uvicorn
  3. Create a FastAPI app file, for example app.py, with the following content: from fastapi import FastAPI app = FastAPI() @app.get("/") async def read_root(): return {"Hello": "World"}
  4. Run the FastAPI app with Uvicorn: uvicorn app:app --host 0.0.0.0 --port 8000
  5. Create an Apache configuration file for the FastAPI app: sudo nano /etc/apache2/sites-available/fastapi.conf Add the following configuration:
  6. Create a WSGI script file, for example app.wsgi, with the following content: import sys sys.path.insert(0, '/path/to/app') from app import app as application
  7. Enable the site and restart Apache: sudo a2ensite fastapi sudo systemctl restart apache2


Now you should be able to access your FastAPI app through Apache using the specified domain and port.

Related Threads:

How to run a script on server using fastapi?
How to run fastapi from terminal?
How to run fastapi app on multiple ports?
How to setup https with apache2?
How to prevent html injection in fastapi?
How to return a list field in fastapi?