2012-05-29 37 views
14

Próbuję uruchomić django 1.3.1 na nowym serwerze vps (CentOS 6).
Teraz dostaję ten błąd:(13) Odmowa uprawnień: mod_wsgi Nie można się połączyć z WSGI

(13)Permission denied: mod_wsgi (pid=7159): Unable to connect to WSGI daemon process 'somodinteriors:80' on '/etc/httpd/logs/wsgi.7152.0.1.sock' after multiple attempts. 

czytałem jak to naprawić dodając WSGISocketPrefix (można trzcinę o tym here)

To jest mój plik konfiguracyjny:

#Alias /robots.txt /var/www/vhosts/domain.co.uk/httpdocs/robots.txt 
#Alias /favicon.ico /var/www/vhosts/domain.co.uk/httpdocs/favicon.ico 

#Alias /static/ /var/www/vhosts/domain.co.uk/httpdocs/ 
#Alias /media/ /var/www/vhosts/domain.co.uk/httpdocs/media/ 

#WSGIScriptAlias//var/www/vhosts/domain.co.uk/sites/somod/apache/django.wsgi 

#<Directory /var/www/vhosts/domain.co.uk> 
# Order allow,deny 
# Allow from all 
#</Directory> 

#<VirtualHost *:80> 
    ServerName domain.co.uk 

    LogLevel debug 
    ErrorLog /var/www/vhosts/domain.co.uk/logs/error.log 
    CustomLog /var/www/vhosts/domain.co.uk/logs/access.log combinedio 

    HostnameLookups Off 

    UseCanonicalName On 

    WSGIScriptAlias//var/www/vhosts/domain.co.uk/sites/somod/apache/django.wsgi 
    WSGIDaemonProcess somodinteriors:80 user=somod group=psaserv processes=1 threads=1 
    WSGIProcessGroup somodinteriors:80 
# WSGIPythonPath /var/www/vhosts/domain.co.uk 
    WSGISocketPrefix /var/run/wsgi 

    Alias /robots.txt /var/www/vhosts/domain.co.uk/sites/templates/robots.txt 
    Alias /favicon.ico /var/www/vhosts/domain.co.uk/sites/media/favicon.ico 

    <Directory /var/www/vhosts/domain.co.uk/httpdocs> 
    AllowOverride None 
    Options -ExecCGI -Includes -FollowSymLinks -Indexes 
    Order allow,deny 
    Allow from all 
    AddOutputFilterByType DEFLATE text/html text/plain text/xml text/css text/javascript application/x-javascript 
    </Directory> 

    <Directory /var/www/vhosts/domain.co.uk/sites> 
    AllowOverride None 
    Options +ExecCGI -Includes +FollowSymLinks -Indexes 
    Order allow,deny 
    Allow from all 
    AddOutputFilterByType DEFLATE text/html text/plain text/xml text/css text/javascript application/x-javascript 
    </Directory> 

    Alias /media /var/www/chost/domain.co.uk/media 
    <Location /media/> 
    SetHandler None 
    </Location> 
#</VirtualHost> 

Po dodaniu WSGISocketPrefix /var/run/wsgi do mojego pliku konfiguracyjnego pojawia się ten błąd po ponownym uruchomieniu apache:

Syntax error on line 29 of /var/www/vhosts/domain.co.uk/conf/vhost.conf: 
WSGISocketPrefix cannot occur within <VirtualHost> section 

Ten folder istnieje:

drwxr-xr-x. 2 root  root  4096 May 29 09:36 wsgi 

Na stronie internetowej i uzyskać 503 błędu.

Gdzie należy umieścić WSGISocketPrefix /var/run/wsgi?

+0

Co to znaczy, że folder WSG nie istnieje? –

Odpowiedz

8

Trzymaj go poza VirtualHost w zasięgu globalnym w konfiguracji Apache.

Dokumentacja w:

http://code.google.com/p/modwsgi/wiki/ConfigurationDirectives#WSGISocketPrefix

mówi, że kontekst jest config serwera, a nie wirtualnego hosta.

+0

Dzięki za odpowiedź. W tym pliku konfiguracyjnym wszystkie instrukcje są traktowane jako 'VirtualHost', więc umieszczam tę instrukcję w pliku konfiguracyjnym dla wszystkich serwerów i to działa dobrze. – miszczu

Powiązane problemy