2013-06-23 1 views
1

Я написал приложение для вишни и теперь мне нужен SSL. Я работаю с apache/wsgi и имею рабочий рабочий файл python, работающий и возвращающий страницы. Теперь я пытаюсь заставить POST работать.cherrypy/wsgi за apache ssl

Это мой рабочий сценарий:

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> 

Моих апачских конфигурациях,

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
def index(self, files): 

должен быть

def index(self, file): 

Ughh !! увы, исправлено!