如何在apache服务器上托管python Flask应用程序?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何在apache服务器上托管python Flask应用程序?相关的知识,希望对你有一定的参考价值。
我有一个flask应用程序,我想将其托管在ubuntu Amazon AWS实例上运行的Apache服务器上。我遵循了很多在线说明,例如Deploying a Python app on a Linux/Unix production server,但没有成功
所以,有一个清楚的为什么要这样做,并带有将要解释的步骤。]
安装python,pip和mod_wsgi;
apt install python3-dev python3-pip libapache2-mod-wsgi
重新启动apache2服务并验证是否已加载wsgi模块:sudo apache2ctl -M | grep -i wsgi
在您的项目中创建一个projectname.wsgi文件:
import sys
sys.path.insert(0, '/path/to/project')
from app import app as application
application.root_path = '/path/to/project'
在/ etc / apache2 / sites-available下为您的项目创建一个配置文件(projectname.conf-.conf扩展名是Apache的新版本)。>
<VirtualHost *:<PORT>> ServerName <DOMAIN.NAME> WSGIDaemonProcess <projectname> user=<user> group=www-data threads=2 WSGIScriptAlias / /path/to/project/projectname.wsgi <Directory /path/to/project> WSGIProcessGroup <projectname> WSGIApplicationGroup %GLOBAL Order deny,allow Allow from all </Directory> Alias "/static/" "/path/to/project/static/" <Directory /path/to/project/static/> Order allow,deny Allow from all </Directory> ErrorLog /path/to/logs/error.log CustomLog /path/to/logs/access.log combined </VirtualHost>
将配置文件链接到启用的文件夹:
cd ../sites-enabled&ln -s ../sites-available/projectname.conf projectname.conf。
重新加载apache2服务并检查网站是否在线。
以上是关于如何在apache服务器上托管python Flask应用程序?的主要内容,如果未能解决你的问题,请参考以下文章
如何在 Windows Server 上托管 Python 3.7 烧瓶应用程序?
如何在没有 Flask 的 Heroku 上托管 websocket 应用程序 python 服务器?
尝试在树莓派上托管 python 套接字服务器时出现 ConnectionRefusedError
使用 apache 在单个 VPS 上托管多个 laravel 5.5 项目?