2010-10-26 20 views
0

À l'heure actuelle, toute URL affiche simplement une page par défaut du projet ("bienvenue dans django").django et nginx - les URL sont les mêmes

Peu importe ce que je mets (example.com, example.com/hello, example.com/asdfjkasdf (& $ (# $ $ #)

Je suis nouveau à django et je suivais un tutoriel simple

Mon nginx.conf a ceci:.

location/{ 
         # host and port to fastcgi server 
         fastcgi_pass 127.0.0.1:8801; 
         fastcgi_param PATH_INFO $fastcgi_script_name; 
         fastcgi_param REQUEST_METHOD $request_method; 
         fastcgi_param QUERY_STRING $query_string; 
         fastcgi_param SERVER_NAME $server_name; 
         fastcgi_param SERVER_PORT $server_port; 
         fastcgi_param SERVER_PROTOCOL $server_protocol; 
         fastcgi_param CONTENT_TYPE $content_type; 
         fastcgi_param CONTENT_LENGTH $content_length; 
         fastcgi_pass_header Authorization; 
         fastcgi_intercept_errors off; 
} 

Mes fichiers du site sont stockés dans /var/www/firstsite/

Mon views.py a ceci:

from django.http import HttpResponse 

def hello(request): 
    return HttpResponse("Hello world") 

Et mon urls.py a ceci:

from django.conf.urls.defaults import * 
from firstsite.views import hello 
# Uncomment the next two lines to enable the admin: 
# from django.contrib import admin 
# admin.autodiscover() 

urlpatterns = patterns('', 
     ('^hello/$', hello), 
    # Example: 
    # (r'^firstsite/', include('firstsite.foo.urls')), 

    # Uncomment the admin/doc line below and add 'django.contrib.admindocs' 
    # to INSTALLED_APPS to enable admin documentation: 
    # (r'^admin/doc/', include('django.contrib.admindocs.urls')), 

    # Uncomment the next line to enable the admin: 
    # (r'^admin/', include(admin.site.urls)), 
) 

Ai-je besoin de redémarrer l'instance fcgi à chaque changement (je ne le pense pas). Je ai utilisé: python manage.py runfcgi method="thread" host=127.0.0.1 port=8080

Alors oui, comment puis-je faire fonctionner les urls? Est-ce que je peux déboguer en utilisant django? Par exemple, peut-être imprimer les données qu'il reçoit pour s'assurer que nginx se comporte correctement?

Répondre

0

Ne commencez pas par essayer de configurer Django avec FastCGI. Suivez le actual tutorial et utilisez le serveur de développement intégré. Une fois que vous maîtrisez le fonctionnement du framework de base, vous pouvez passer à la compréhension de la manière de le déployer.

Et pourquoi diriez-vous que vous ne penseriez pas que vous auriez à redémarrer l'instance à chaque changement? C'est précisément what you need to do.