Невозможно настроить wsgi с httpd для запуска веб-приложения на основе python

У меня есть archlinux.

Я установил httpd а также mod_wsgi

и добавил следующее в /etc/httpd/conf/httpd.conf

LoadModule wsgi_module modules/mod_wsgi.so

после этого, как поместить вещи в файл virtualhost.

Тем не менее я попробовал:

<VirtualHost *:80>
    ServerName localhost
    WSGIScriptAlias / /home/simha/.public_html/public_wsgi/wsgi-scripts
    <Directory "/home/simha/.public_html/public_wsgi/wsgi-scripts">
    Options All Indexes FollowSymLinks    
    AllowOverride All
    Order allow,deny
    Allow from all
    </Directory>
</VirtualHost>

Я поместил тестовый скрипт wsgi_app.py в /home/simha/.public_html/public_wsgi/wsgi-scripts папка.

скрипт wsgi_app.py

#-*- coding: utf-8 -*-
def wsgi_app(environ, start_response):
    import sys
    output = sys.version.encode('utf8')
    status = '200 OK'
    headers = [('Content-type', 'text/plain'),
               ('Content-Length', str(len(output)))]
    start_response(status, headers)
    yield output

# mod_wsgi need the *application* variable to serve our small app
application = wsgi_app

(Также я не понимаю, что делает этот код). я получил это от archlinux.

когда идти в localhost в браузере я получаю

запрещено

You don't have permission to access / on this server.

Additionally, a 403 Forbidden error was encountered while trying to use an ErrorDocument to handle the request.

Любая помощь.

1 ответ

Эта ошибка обычно вызвана тем, что у вашего домашнего каталога есть разрешения, так что другие пользователи не могут получить к нему доступ. Это вызовет проблему, так как Apache httpd будет работать как отдельный пользователь.

Переместите ваше приложение в каталог за пределами вашего домашнего каталога, например, в /var/www,

Другие вопросы по тегам