2013-04-23 88 views
0

我與在CentOS 6的Apache2的httpd服務器中安裝的web2py,並以https拒絕。我安裝了httpd服務器,啓用了mod_wsgi,mod_ssl,並配置了ssl certs/keys。在我重新啓動httpd服務後,我可以看到WSGIDaemonProcess正在運行,web2py下的所有應用程序目錄都被授予對web2py組(這是我選擇運行WSGI進程的用戶和組)的讀/寫權限。不過,我試了管理應用程序,歡迎應用程序,都給了我403權限拒絕Apache錯誤頁面(而不是web2py錯誤頁面)。權限由web2py的用的Apache2在CentOS

以下是httpd的配置文件中的虛擬主機段:

NameVirtualHost *:443 
WSGIDaemonProcess web2py user=web2py group=web2py display-name=%{GROUP} 

<VirtualHost *:443> 
    ServerName myserver_ipaddress 
    ServerAlias myserver_hostname 
    WSGIProcessGroup web2py 
    WSGIScriptAlias//home/web2py/web2py/wsgihandler.py 

    <Directory /home/web2py/web2py> 
    AllowOverride None 
    Order Allow,Deny 
    Deny from all 
    ExpiresDefault "access plus 1 month" 
    <Files wsgihandler.py> 
     Allow from all 
    </Files> 
    </Directory> 

    AliasMatch ^/([^/]+)/static/(.*) \ 
     /home/web2py/web2py/applications/$1/static/$2 
    <Directory /home/web2py/web2py/applications/*/static/> 
    Order Allow,Deny 
    Allow from all 
    </Directory> 

    <Location /admin> 
    Allow from all 
    </Location> 

    ScriptAlias /cgi/ "/home/web2py/web2py/cgi-bin/" 
    <Directory "/home/web2py/web2py/cgi-bin/"> 
    AllowOverride None 
    Options None 
    Order allow,deny 
    Allow from all 
    </Directory> 

    <LocationMatch ^/([^/]+)/appadmin> 
    Allow from all 
    </LocationMatch> 

    CustomLog /home/web2py/var/log/apache2/access.log common 
    ErrorLog /home/web2py/var/log/apache2/error.log 
</VirtualHost> 

有誰有一個想法,我做錯了什麼?或者問題可能在其他地方?

在此先感謝。

回答

0

最後,問題得到解決。這雖然有點愚蠢。 httpd進程由用戶apache運行,站點根目錄爲/ home/web2py/web2py,它由用戶web2py(group web2py)擁有。用戶apache屬於組web2py,但是,默認情況下/ home/web2py目錄不可寫或可由組執行。

chmod 775 /home/web2py 

解決了這個問題。