Django : прекратите доступ к моему веб-приложению через порт 8000 и доступ только по IP

Я развернул свое веб-приложение Django на дроплете Digital Ocean. Сервер python запущен на порту 8000.

python manage.py runserver 0.0.0.0:8000

Я настроил веб-сервер apache для обслуживания запросов.

/etc/apache2/sites-available/000-default.conf

<VirtualHost *:80>
        ServerAdmin webmaster@localhost
        DocumentRoot /etc/myproject

        ErrorLog ${APACHE_LOG_DIR}/error.log
        CustomLog ${APACHE_LOG_DIR}/access.log combined

        #Serving static files
        Alias /static/ /etc/myproject/static/
        <Directory /etc/myproject/static>
                Require all granted
        </Directory>

        <Directory /etc/myproject/myproject>
                <Files wsgi.py>
                        Require all granted
                </Files>
        </Directory>
        WSGIDaemonProcess myproject python-path=/etc/myproject python-home=/etc/myprojectenv
        WSGIProcessGroup myproject
        WSGIScriptAlias / /etc/myproject/myproject/wsgi.py
</VirtualHost>

Теперь, когда я обращаюсь к своему веб-приложению, используя IP-адрес X.X.X.X, я могу видеть свое приложение, однако приложение также доступно через порт 8000, X.X.X.X:8000.

Я хочу предотвратить доступ к моему приложению через любой другой порт, кроме доступа через IP. Как я могу это сделать?

Хорошо, я упустил момент, что мне не нужно запускать сервер Django, когда я настроил веб-сервер Apache для обслуживания моих запросов. Все запросы обслуживаются модулем mod_wsgi Apache. Пакет mod_wsgi предоставляет модуль Apache, который реализует WSGI-совместимый интерфейс для размещения веб-приложений на основе Python поверх веб-сервера Apache.

Вернуться на верх