Как исправить 'Not found Запрошенный ресурс не был найден на этом сервере.', С которым сталкиваются при обслуживании сайта django с использованием nginx? - PullRequest
0 голосов
/ 20 июня 2019

Я разместил свой веб-сайт www.gojainyatra.com, созданный с помощью django, обслуживаемый с помощью nginx. Хотя некоторые страницы открываются правильно, некоторые страницы выдают ошибку, например,

https://www.gojainyatra.com/dharamshala/firstshala/vlogs/2019/6/20/5/9/46/test/

Не найдено Запрошенный ресурс не найден на этом сервере

Моя конфигурация nginx:

upstream app_server {
    server unix:/home/gojainyatra/run/gunicorn.sock fail_timeout=0;
}

server {
    listen 80;
    server_name gojainyatra.com www.gojainyatra.com;

    keepalive_timeout 5;
    client_max_body_size 4G;

    access_log /home/gojainyatra/logs/nginx-access.log;
    error_log /home/gojainyatra/logs/nginx-error.log;

    location /static/ {
        alias /home/gojainyatra/staticfiles/;
    }

    # checks for static file, if not found proxy to app
    location / {
        try_files $uri @proxy_to_app;
    }

    location @proxy_to_app {
      proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
      proxy_set_header Host $http_host;
      proxy_redirect off;
      proxy_pass http://app_server;
    }
}

Часть моего urls.py

urlpatterns = [
path('dharamshala/<slug:slug>/',views.shala_info,name='shala_info'),   

path('dharamshala/<slug:slug>/vlogs/',views.shala_vlogs_list,name='shala_vlogs_list'),  

path('dharamshala/<slug:slug>/vlogs/<year>/<month>/<day>/<hour>/<minute>/<second>/<username>/',views.shala_vlog_descp,name='shala_vlog_descp'),
]

Часть моего views.py (функция shala_vlog_descp - это та, которая должна обслуживать страницу с ошибкой Not Found, она отлично работает в среде разработки)

def shala_info(request,slug):
    shala = get_object_or_404(Shala,name_without_space=slug)
    return render(request,'shala_info.html',{'shala':shala})

def shala_vlog_descp(request,slug,year,month,day,hour,minute,second,username):
    shala = get_object_or_404(Shala,name_without_space=slug)
    my_vlog = get_object_or_404(vlog, dharamshala__name_without_space=slug, 
       last_updated__year=year,last_updated__month=month,last_updated__day=day,  
       last_updated__hour=hour,last_updated__minute=minute,
       last_updated__second=second ,writer__username=username)
    return render(request,'shala_vlog_descp.html', 
       {'shala':shala,'vlog':my_vlog})

def shala_vlogs_list(request,slug):
    shala = get_object_or_404(Shala,name_without_space=slug)
    return render(request,'shala_vlogs_list.html',{'shala':shala})

Все страницы корректно обслуживаются в среде разработки, но не на производстве. Пожалуйста, помогите.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...