Skip to main content

Django Gateway Interface

Overview

Django Gateway Interface is a Django application designed to provide a user-friendly web interface for configuring Nginx settings for set request limit and IP block. This package enables users to easily manage gateway configurations, specifically to set request limits and block IP addresses at any endpoint for security purposes. It supports both Windows and Linux environments, allowing for seamless integration and efficient configuration management based on user input. Make sure Selected Operating System is same as your working environment

Features

  • User-friendly interface for gateway configuration.
  • Integration with Nginx to apply and manage configurations.
  • Easy installation via PyPI.
  • Support Windows and Linux even in WSL

Installation

You can install the Django Gateway Interface package from PyPI using pip. Make sure you have Python 3.8 or higher and Django 3.0 or higher installed.

pip install gateapp

Once verify it using and version should be 2.1.5

pip show gateapp

Requirement

  • Make sure your django app is running on http://127.0.0.1:8000, needed some modification in setting.py for template and css and follow configuration

Configuration

Add to Installed Apps: Add 'gateapp' to your INSTALLED_APPS in your Django settings.py:

import os
INSTALLED_APPS = [
    ...
    'gateapp',
    ...
]
TEMPLATES = [
    {
        ...
        'DIRS': [os.path.join(BASE_DIR, 'templates')],

        ...
    },
]
# Optionally include additional static file directories
STATIC_URL = '/static/'
STATICFILES_DIRS = [
    os.path.join(BASE_DIR, 'static'),  
  
]

Database Migrations: Run the following command to apply database migrations for the Django app:

python manage.py migrate

Static Files: Collect static files for the Django app:

python manage.py collectstatic

URL Configuration: Include the URLs for the Gateway Interface in your Django project urls.py:

from django.urls import path, include
urlpatterns = [
    # Other URL patterns
    path('configure/', include('gateapp.urls'))
]

Nginx Configuration: Configure Nginx to serve your Django application. Here’s a basic Nginx configuration example for windows:

server {
    listen 80;
    server_name yourdomain.com;

    location / {
        proxy_pass http://127.0.0.1:8000;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
    }

    location /static/ {
        alias /path/to/your/static/files/;
    }

    location /media/ {
        alias /path/to/your/media/files/;
    }
}

Replace yourdomain.com and file paths with your specific details.

Usage

Run the Django Development Server: Start the Django development server to test your installation:

python manage.py runserver

Access the Interface: Open your web browser and navigate to http://localhost:8000/configure to access the Gateway Interface.

Configure Gateway Settings:

Use the web interface to fill in and submit configuration details for the gateway.

Contributing

Contributions are welcome! To contribute to the Django Gateway Interface:

Fork the repository on GitHub Create a new branch for your changes. Make your changes and test them. Submit a pull request with a clear description of your changes.

License

This project is licensed under the MIT License - see the LICENSE file for details.

Thank you for using Django Gateway Interface! If you encounter any issues or have suggestions, please feel free to open an issue on GitHub or contact us directly.

Release files for gateapp 2.1.5

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for gateapp 2.1.5
File Size Uploaded
gateapp-2.1.5.tar.gz 14.2 MB Details

Built distribution (wheel)

Table of built distributions (wheels) for gateapp 2.1.5
File Interpreter ABI Platform
gateapp-2.1.5-py3-none-any.whl Python 3 none any Details

Total release size: 28.4 MB

Release files / gateapp-2.1.5.tar.gz

Download URL gateapp-2.1.5.tar.gz
Size 14.2 MB
Tags Source
SHA-256 checksum
How to use checksums
b862b0b48443a04bc9e22d0f1ae2ea6752398c45c3f92b067a303034e16d1d50
BLAKE2b-256 checksum
How to use checksums
f416d12d9d4adaddd6f03a5f85fe899df63ba2b02ed960d57f6c165343edf7a6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/5.1.1 CPython/3.12.4

Release files / gateapp-2.1.5-py3-none-any.whl

Download URL gateapp-2.1.5-py3-none-any.whl
Size 14.2 MB
Tags Python 3
SHA-256 checksum
How to use checksums
f96fc2ba66120521d0bda1c3ea47c535e5f65d3639ee7557108cc357a2d9393e
BLAKE2b-256 checksum
How to use checksums
ab2c682ce1ae7aeb61244f78ba38023d3ef8d09c7febe4a6840c3a58eeb8a954
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/5.1.1 CPython/3.12.4

Release history Release notifications | RSS feed

This release

2.1.5 This release

2 release files

2.1.4

2 release files

2.1.3

2 release files

0.1.1

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page