2012-04-17 56 views
0

我想设置一个金字塔应用程序。我正在使用wsgi和apache2。apache + mod_wsgi文件权限问题与金字塔和pyramid_beaker

我不断收到内部服务器错误和Apache日志的内容是

mod_wsgi (pid=11200): Exception occurred processing WSGI script '/home/ubuntu/modwsgi/env/pyramid.wsgi'. 
Traceback (most recent call last): 
    File "/home/ubuntu/modwsgi/env/lib/python2.6/site-packages/pyramid-1.3-py2.6.egg/pyramid/router.py", line 191, in __call__ 
    request._process_response_callbacks(response) 
    File "/home/ubuntu/modwsgi/env/lib/python2.6/site-packages/pyramid-1.3-py2.6.egg/pyramid/request.py", line 243, in _process_response_callbacks 
    callback(self, response) 
    File "/home/ubuntu/modwsgi/env/lib/python2.6/site-packages/pyramid_beaker-0.6.1-py2.6.egg/pyramid_beaker/__init__.py", line 26, in session_callback 
    self.persist() 
    File "/home/ubuntu/modwsgi/env/lib/python2.6/site-packages/Beaker-1.6.3-py2.6.egg/beaker/session.py", line 706, in persist 
    self._session().save() 
    File "/home/ubuntu/modwsgi/env/lib/python2.6/site-packages/Beaker-1.6.3-py2.6.egg/beaker/session.py", line 400, in save 
    **self.namespace_args) 
    File "/home/ubuntu/modwsgi/env/lib/python2.6/site-packages/Beaker-1.6.3-py2.6.egg/beaker/container.py", line 622, in __init__ 
    util.verify_directory(self.file_dir) 
    File "/home/ubuntu/modwsgi/env/lib/python2.6/site-packages/Beaker-1.6.3-py2.6.egg/beaker/util.py", line 85, in verify_directory 
    os.makedirs(dir) 
    File "/usr/lib/python2.6/os.py", line 150, in makedirs 
    makedirs(head, mode) 
    File "/usr/lib/python2.6/os.py", line 157, in makedirs 
    mkdir(name, mode) 
OSError: [Errno 13] Permission denied: 'beaker_dir' 

我可以在终端上使用简单的pserve服务于网页和运行wget http://localhost:6543/user/form。它可以很好地与形式下载。但通过浏览器,我得到了500错误。

我使用EC2来托管应用程序。

在应用:主要节我使用下面的代码:

session.type = file 
session.data_dir = beaker_dir 
session.key = mvc 
session.encrypt_key = mysecretencryptionkey 
session.validate_key = mysecretvalidationkey 
session.cookie_on_exception = true 

非常感谢阅读

回答

3

供应的绝对路径:

session.data_dir = beaker_dir 

当前工作目录可能是任何东西,通常是'/',所以路径将是错误的。