使用Apache和WSGI运行虚拟主机Flask Web应用程序

时间:2020-07-16 01:11:28

标签: flask mod-wsgi

我正在尝试使用apache2和WSGI运行Flask Web应用程序。

我的apache2配置文件test1.conf位于/etc/apache2/sites-available中。

test1.conf文件的内容如下:

<VirtualHost *:80>
        ServerName test1.com
        ServerAdmin admin@test1.com
        WSGIScriptAlias / /root/Desktop/Building-Websites/Websites-test/test/test.wsgi
        <Directory /root/Desktop/Building-Websites/Websites-test/test/app/>
            Order allow,deny
            Allow from all
        </Directory>
        Alias /static /root/Desktop/Building-Websites/Websites-test/test/app/static
        <Directory /root/Desktop/Building-Websites/Websites-test/test/app/static/>
            Order allow,deny
            Allow from all
        </Directory>
        ErrorLog ${APACHE_LOG_DIR}/error.log
        LogLevel warn
        CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

我的应用程序文件位于以下目录:/root/Desktop/Building-Websites/Websites-test/test/

在应用程序目录中,我有一个test.wsgi文件,其内容如下:

#!/usr/bin/python
import sys
import logging
logging.basicConfig(stream=sys.stderr)
sys.path.insert(0,"/root/Desktop/Building-Websites/Websites-test/test/")
from app import app as application

我在/etc/hosts文件中有以下条目:

127.0.0.1   test1.com

当我启动apache2服务并尝试访问test1.com时,在浏览器中出现以下错误:

Forbidden

You don't have permission to access this resource.

我确信Flask应用程序可以独立运行,因为我在本地使用了Apache 2进行了测试。

我认为我有一个许可问题,但我不知道如何解决。任何帮助将不胜感激。

0 个答案:

没有答案