apache lib-wsgi 403 Запрещено - PullRequest
0 голосов
/ 19 апреля 2020

Единственный способ запустить приложения на локальном компьютере - это использовать apache и lib-wsgi. Я установил все соответствующие пакеты, включая кодировки, но в своем браузере я получаю сообщение об ошибке 403 Forbidden и в журналах ошибок получаю следующее сообщение:

AH00051: child pid 28900 exit signal Aborted (6), possible coredump in /etc/apache2
Fatal Python error: Py_Initialize: Unable to get the locale encoding
ImportError: No module named 'encodings'

Я запустил

sudo chmod a+x on my files

и

sudo chmod +rw on my folders.

и

sudo chown on my working directories

Что мне нужно сделать, чтобы это работало?

Это мои файлы:

. файл конфигурации:

<VirtualHost *:80>
        ServerAdmin webmaster@localhost
        DocumentRoot /var/www/html/demo1
        ServerName 127.0.0.1
        # Give an alias to to start your website url with
     WSGIDaemonProcess application python-home=/var/www/html/demo1
     WSGIProcessGroup flask-hello-app
     WSGIApplicationGroup %{GLOBAL}
     WSGIScriptAlias /demo1 /var/www/html/demo1/flask-hello-app.wsgi
     <Directory /var/www/html/demo1/>
                # set permissions as per apache2.conf file
            Options FollowSymLinks
            # AllowOverride None
            # Require all granted
            Order deny,allow
            Allow from all
     </Directory>
        ErrorLog ${APACHE_LOG_DIR}/error.log
        LogLevel warn
        CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
# vim: syntax=apache ts=4 sw=4 sts=4 sr noet

flask -hello-app.wsgi

#!/uae/bin/python3
import logging
import sys
logging.basicConfig(stream=sys.stderr)
sys.path.insert(0, '/var/www/html/demo1/')
from application import app as application
application.secret_key = 'super_secret_key'

flask -hello-app.py

from flask import Flask
from flask_sqlalchemy import SQLAlchemy
import os

app = Flask(__name__)
app.config['SQLALCHEMY_DATABASE_URI'] = 'postgresql+psycopg2://postgres:F00tBall@127.0.0.1:5432/example'
db = SQLAlchemy(app)

class Person(db.Model):
    __tablename__ = 'persons'
    id = db.Column(db.Integer, primary_key=True)
    name = db.Column(db.String(), nullable=False)

db.create_all()

@app.route('/')
def index():
    return 'Hello '

if __name__ == '__main__':
    app.run()

Я действительно нужно знать, как заставить это работать.

Спасибо.

...