apache ssl背后的cherrypy / wsgi

时间:2013-06-23 17:30:32

标签: apache wsgi cherrypy

我写了一个樱桃应用程序,现在我需要SSL。我正在使用apache / wsgi并且有一个正在运行和返回页面的工作python文件。现在我正试图让POST工作。

这是我的工作脚本:

import sys
sys.stdout = sys.stderr

import atexit
import threading
import cherrypy

cherrypy.config.update({'environment': 'embedded'})

if cherrypy.engine.state == 0:
    cherrypy.engine.start(blocking=False)
    atexit.register(cherrypy.engine.stop)

class Root(object):
    def index(self):
        # restrict access by ip address
        clientIP = cherrypy.request.headers["Remote-Addr"]
        if clientIP not in self.allowedIPs:
            return "Access Denied"

        return cherrypy.url()

    index.exposed = True
    allowedIPs = ["127.0.0.1", "192.168.174.1"]

application = cherrypy.Application(Root(), None)

如果我进行修改以抓住帖子:

class Root(object):
    def index(self, files):

我收到以下错误:

    <h2>404 Not Found</h2>
    <p>Nothing matches the given URI</p>

我的apache配置,

WSGISocketPrefix run/wsgi
NameVirtualHost *:443
<VirtualHost *:443>
        DocumentRoot /var/www/ssl_html
        ServerName   192.168.174.130:443
        ServerAlias 192.168.174.130

        SSLEngine On
        SSLCertificateFile /etc/ssl/certs/devel.crt
        SSLCertificateKeyFile /etc/ssl/certs/devel.key
        <Location />
                SSLRequireSSL
        </Location>

        WSGIDaemonProcess 192.168.174.130 processes=2 threads=15 display-name=%{GROUP}
        WSGIProcessGroup 192.168.174.130

        WSGIScriptAlias / /var/www/wsgi-scripts/helloWorld.py

</VirtualHost>

任何帮助将不胜感激! :)

1 个答案:

答案 0 :(得分:1)

def index(self, files):

应该是

def index(self, file):

ughh !!唉,固定好了!