2012-06-30 3 views
0

https://docs.djangoproject.com/en/dev/howto/deployment/fastcgi/ détails certaines configuration pour FCGI, mais alors qu'il a du matériel pour le fichier de configuration Apache, il omet le FCGI.Existe-t-il un HOWTO pour FCGI pour le déploiement de Satchmo?

Comment puis-je créer un fichier site.fcgi pour un processus fastcgi démonisé qui s'exécute sur le même serveur lié à 127.0.0.1 et qui écoute sur le port 1234?

--EDIT--

je suit dans mon httpd.conf:

FastCGIExternalServer /home/jonathan/store/deploy/store.fcgi -host 127.0.0.1:1234 

<VirtualHost *:80> 
    ServerName steampunk.stornge.com 
    DocumentRoot /home/jonathan/store/ 
    Alias /media /home/jonathan/store/media 
    RewriteEngine On 
    RewriteRule ^/(media.*)$ /$1 [QSA,L,PT] 
    RewriteCond %(REQUEST_FILENAME} !-f 
    RewriteRule ^/(.*)$ /store.fcgi/$1 [QSA,L] 
</VirtualHost> 

En /home/jonathan/store/deploy/store.fcgi je:

import os 
import sys 

from os.path import abspath, dirname, join 
from site import addsitedir 

sys.path.insert(0, abspath(join(dirname(__file__), "../"))) 

from django.conf import settings 
os.environ["DJANGO_SETTINGS_MODULE"] = "store.settings" 

from django.core.servers.fastcgi import runfastcgi 
runfastcgi(method="threaded", daemonize="true") 

Et j'ai aussi, en cours d'exécution,

python manage.py runfcgi method=threaded host=127.0.0.1 port=1234 

Quand je tire http: // [nom d'hôte], je reçois:

Not Found 

The requested URL/was not found on this server. 

Additionally, a 404 Not Found error was encountered while trying to use an ErrorDocument to handle the request. 

Apache/2.2.22 (Ubuntu) Server at [hostname] Port 80 

http: // [nom d'hôte]/media tire un indice de population.

Qu'est-ce qui pourrait être amélioré ou pourrait causer des problèmes dans cette utilisation de FCGI? Le fichier store.cgi était basé sur un couple de fichiers .fcgi que j'avais utilisés après avoir trouvé des fichiers FCGI de modèle pour Satchmo dans les documents Django ou FCGI. Je ne fais pas confiance à ce point. Je n'ai juste pas googlé quelque chose de mieux.

Des suggestions?

Répondre

0

J'ai réussi à le déployer avec une autre option, FCGI:

Dans les sites activés:

FastCGIExternalServer /home/jonathan/testfcgi/testfcgi.fcgi -host 127.0.0.1:3033 

<VirtualHost *:80> 
    ServerAdmin [email protected] 
    ServerName testfcgi.jonathanscorner.com 
    DocumentRoot /home/jonathan/testfcgi 
    Alias /media /home/testfcgi/media 
    RewriteEngine On 
    RewriteRule ^/(media.*)$ /$1 [QSA,L,PT] 
    RewriteCond %{REQUEST_FILENAME} !-f 
    RewriteRule ^/(.*)$ /testfcgi.fcgi/$1 [QSA,L] 

    <Directory /home/jonathan/testfcgi/> 
     Options Indexes FollowSymLinks MultiViews 
     AllowOverride None 
     Order allow,deny 
     allow from all 
    </Directory> 

ErrorLog ${APACHE_LOG_DIR}/error.log 
# Possible values include: debug, info, notice, warn, error, crit, 
# alert, emerg. 
LogLevel warn 

CustomLog ${APACHE_LOG_DIR}/access.log combined 

</VirtualHost> 

Ceci est combiné avec une ligne de commande invocation de fcgi.