我正在尝试遵循如何在apache + mod_wsgi上运行金字塔应用程序的基本教程,并且遇到了很多麻烦。
以下是我正在遵循的教程:
http://docs.pylonsproject.org/projects/pyramid/en/1.0-branch/tutorials/modwsgi/index.html
我在已经安装了apache和mod_wsgi的centos机器上做这个教程。
我认为我遇到的问题是httpd.conf文件。我将网址http://nodeline.com指向服务器,因此我尝试配置虚拟主机,以便在您访问nodeline.com时加载金字塔应用。
这就是我在httpd.conf文件中的内容。
<VirtualHost *:80>
ServerName nodeline.com
WSGIApplicationGroup %{GLOBAL}
WSGIPassAuthorization On
WSGIDaemonProcess pyramid user=main group=main processes=1 \
threads=4 \
python-path=/home/main/modwsgi/env/lib/python2.6/site-packages
WSGIScriptAlias /myapp /home/main/modwsgi/env/pyramid.wsgi
<Directory /home/main/modwsgi/env>
WSGIProcessGroup pyramid
Order allow,deny
Allow from all
</Directory>
</VirtualHost>
教程很奇怪,因为它似乎教你如何在本地机器上进行设置。它没有说明那里的虚拟主机。有什么我想念的吗?或者,也许有人可以指出我正确的方向。我真的很感激别人的帮助。
答案 0 :(得分:3)
WSGIScriptAlias /myapp /home/main/modwsgi/env/pyramid.wsgi
应该是
WSGIScriptAlias / /home/main/modwsgi/env/pyramid.wsgi
试试这个:
<VirtualHost *:80>
ServerName nodeline.com
DocumentRoot /home/main/modwsgi/env
<Directory />
Options Indexes FollowSymLinks Includes ExecCGI
AllowOverride None
</Directory>
WSGIApplicationGroup %{GLOBAL}
WSGIPassAuthorization On
WSGIDaemonProcess pyramid user=main group=main processes=1 \
threads=4 \
python-path=/home/main/modwsgi/env/lib/python2.6/site-packages
WSGIScriptAlias / /home/main/modwsgi/env/pyramid.wsgi
<Directory /home/main/modwsgi/env>
WSGIProcessGroup pyramid
Order allow,deny
Allow from all
</Directory>
</VirtualHost>
$ sudo a2ensite金字塔
$ sudo a2dissite默认
$ sudo /etc/init.d/apache2 restart