Skip to main content

A Django application for configuring gateway settings with a web-based interface

Project description

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.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

gateapp-2.1.5.tar.gz (14.2 MB view details)

Uploaded Source

Built Distribution

gateapp-2.1.5-py3-none-any.whl (14.2 MB view details)

Uploaded Python 3

File details

Details for the file gateapp-2.1.5.tar.gz.

File metadata

  • Download URL: gateapp-2.1.5.tar.gz
  • Upload date:
  • Size: 14.2 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.4

File hashes

Hashes for gateapp-2.1.5.tar.gz
Algorithm Hash digest
SHA256 b862b0b48443a04bc9e22d0f1ae2ea6752398c45c3f92b067a303034e16d1d50
MD5 4eb9d72840551580b84d230828db270d
BLAKE2b-256 f416d12d9d4adaddd6f03a5f85fe899df63ba2b02ed960d57f6c165343edf7a6

See more details on using hashes here.

File details

Details for the file gateapp-2.1.5-py3-none-any.whl.

File metadata

  • Download URL: gateapp-2.1.5-py3-none-any.whl
  • Upload date:
  • Size: 14.2 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.4

File hashes

Hashes for gateapp-2.1.5-py3-none-any.whl
Algorithm Hash digest
SHA256 f96fc2ba66120521d0bda1c3ea47c535e5f65d3639ee7557108cc357a2d9393e
MD5 e9956681ca51b73e7d2c4362079aecea
BLAKE2b-256 ab2c682ce1ae7aeb61244f78ba38023d3ef8d09c7febe4a6840c3a58eeb8a954

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page