如何配置apache服务器通过mod_wsgi托管瓶子python应用程序

2024-05-12 12:37:14 发布

您现在位置:Python中文网/ 问答频道 /正文

作为背景,我真的不熟悉通过ssh和命令行设置服务器,所以请原谅我的经验不足。在

我正在尝试使用bottle(bottlepy)微框架构建一个基本的应用程序,我想使用运行在centos6.6上的httpd apache服务器来托管该应用程序

到目前为止,我已经能够让httpd为索引.html文件来自/var/www/html目录。因此,apache服务器已确认启动并正在运行。在

我遇到的问题是如何使用httpd服务瓶子应用程序。我阅读了bottlepy站点上的部署文档,但是它们跳过了具体的细节。我已经根据我发现的其他文档尝试了一些排列,但是没有任何效果,所以我正在寻找一些关于在这里做什么的真正明确的建议。在

从高层来看,我明白必须发生的是:

  1. 更改httpd配置,以便它加载应用程序.wsgi文件
  2. 写一个应用程序.wsgi加载python应用程序文件的文件应用程序副本在

首先,对吗?或者是应用程序.wsgi文件“替换”应用程序副本文件?就像我只需更改文件扩展名并放入/var/www目录中一样?这似乎不对,但我知道什么。在

所以我的三个问题是:

  1. httpd配置:
    • 我应该把httpd的virtualhost配置放在哪里?在
    • 它是否在/etc/httpd/conf中/httpd.conf文件,如果是的话,它在文件中的哪个位置?在
    • 或者它是放在自己的文件中,如果是,我该把这个文件放在哪里,我应该给它起什么名字,httpd如何知道如何读取它?在

这是我的配置信息,基于瓶子文档(服务器是Apache2.2):

<VirtualHost *>
   ServerName test_server

   WSGIDaemonProcess app.wsgi user=www-data group=www-data processes=1 threads=5
   WSGIScriptAlias / /var/www/my_app/app.wsgi

   <Directory /var/www/my_app>
       WSGIProcessGroup app.wsgi
       WSGIApplicationGroup %{GLOBAL}
       Order deny,allow
       Allow from all
   </Directory>
</VirtualHost>
  1. 在应用程序.wsgi文件:

    • 这个文件应该包含什么来加载python应用程序副本文件?在
  2. 在应用程序副本文件:

    • 我把Python放哪儿应用程序副本文件?或者这是在应用程序.wsgi把它放在任何地方?在
    • 如何确保python代码被实际执行,而不仅仅是作为文本文件读取?在

提前谢谢。在


Tags: 文件文档服务器目录app应用程序wsgi瓶子