как развернуть python django на linux apache (производство) без виртуальной среды - PullRequest
0 голосов
/ 30 апреля 2020
OS: Linux Debian (last build)
Python: 3.7.7 64bit
python: 3.8.2 64bit
Django: 3.0
Apache2: 2.4.x

Я пытаюсь запустить и протестировать мой Django проект на Linux apache2 (Production-Environment).

Я хочу вставить запись в БД через модуль pymysql ( когда введенная пользователем строка является правильной / неправильной (log)).

Функция ниже (check_usr ()) отлично работает в Test-Environment (127.0.0.1:8000). Но не работает в Production.

Я просто вижу содержимое раздела else в представлении validation () через веб-браузер.

def check_usr (usernameee):
    result = subprocess.run(['........'], stdout=subprocess.PIPE, stderr=subprocess.PIPE, shell=False)
    result = result.stdout.decode('utf-8')
    if "successfully" in result:
        return "ok"
    elif "activation failed" in result:
        return "no"
    else:
        return "problem"

@require_http_methods(["GET"])
def validation(request):
    usernameee = request.GET["usernameee"]
    result = check_usr(usernameee)
    db_connection("init")

    if result == "ok":
        args = (ap_ssid, ap_mac, "ok")
        db_connection("INSERT INTO splash_tble (ap_ssid, ap_bssid, ap_state) VALUES (%s, %s, %s)", args)  
        return render(request, "router/validation.html", {"validation_state": "success"})

    elif result == "no":
        args = (ap_ssid, ap_mac, "no")
        db_connection("INSERT INTO splash_tble (ap_ssid, ap_bssid, ap_state) VALUES (%s, %s, %s)", args)  
        return render(request, "router/validation.html", {"validation_state": "failed"})

    else:
        return render(request, "router/validation.html", {"validation_state": "problem"})

Моя конфигурация в / etc / apache2 /sites-available/routers.conf:

DocumentRoot /root/PycharmProjects/router
WSGIScriptAlias / /root/PycharmProjects/router/captives/wsgi.py
WSGIPythonPath /root/PycharmProjects/router

<Directory /root/PycharmProjects/router>
   <Files wsgi.py>
      Order deny,allow
      Allow from all
      Require all granted 
   </Files>
</Directory>
Alias /static/ /root/PycharmProjects/router/captive_splash/static/
<Directory /root/PycharmProjects/router/captive_splash/static> 
  Order deny,allow
  Allow from all
  Require all granted 
</Directory> 

Пожалуйста, помогите мне диагностировать и запустить функцию check_usr () в Django.

...