django: obsługa plików statycznych przez nginx
Używam apache + mod_wsgi dla django.
I wszystkie
css/js/imagesobsługiwane przez nginx.
Z jakiegoś dziwnego powodu, kiedy
others/friends/colleaguesspróbuj wejść na stronę,
jquery/cssnie ładuje się dla nich, więc strona wygląda na niechlujną.
Moje pliki html używają takiego kodu -
<link rel="stylesheet" type="text/css" href="[url=http://x.x.x.x:8000/css/custom.css"/>]http://x.x.x.x:8000/css/custom.css"/>[/url]
<script type="text/javascript" src="[url=http://1x.x.x.x:8000/js/custom.js"></script>]http://1x.x.x.x:8000/js/custom ... gt%3B[/url]
Moja konfiguracja nginx w dostępnych witrynach wygląda następująco:
server {
listen 8000;
server_name localhost; access_log/var/log/nginx/aa8000.access.log;
error_log/var/log/nginx/aa8000.error.log; location/{
index index.html index.htm;
} location/static/ {
autoindex on;
root/opt/aa/webroot/;
}
}
Jest katalog
/opt/aa/webroot/static/które mają odpowiednie
css&
jskatalogi.
Dziwne jest to, że strony renderują się dobrze, kiedy do nich mam dostęp. Wyczyściłem moje
cache/etc, ale moja strona ładuje się dobrze w różnych przeglądarkach.
Ponadto nie widzę żadnych błędów 404 w plikach dziennika Nginx. W rzeczywistości dzienniki nginx nie są w ogóle aktualizowane.
Zrestartowałem serwer nginx jako root, czy to źle? Dane użytkownika w sieci WWW są zdefiniowane w pliku konfiguracyjnym nginx.
Wszelkie wskazówki byłyby świetne.
Nie znaleziono powiązanych wyników
Zaproszony:
Aby odpowiedzieć na pytania, Zaloguj się lub Zarejestruj się
3 odpowiedzi
Anonimowy użytkownik
Potwierdzenie od:
Anonimowy użytkownik
Potwierdzenie od:
Teraz przypuśćmy, że masz
i w swoich szablonach
lub
.
W swojej konfiguracji nginx będziesz potrzebować odpowiedniego wpisu dla MEDIA_URL. Raczej:
To powinno rozwiązać problem. Po prostu sprawdź, czy możesz dodać
w href/src dołączonych plików js/css i zobacz, co się stanie.
Anonimowy użytkownik
Potwierdzenie od:
Fim i Alaz
- Dzięki za wskazówki, które pomogły.
Oto jak to rozwiązałem dla wszystkich, którzy utknęli na tej samej łodzi:
-
MEDIA_ROOT = ''
MEDIA_URL = '
http://x.x.x.x: 8000/static/
http://x.x.x.x:8000/static/
'
-
<script type = "text/javascript" src = "{{MEDIA_URL}} js/jquery-1.3.2.min.js"> </ script>
-
return render_to_response ('templates/login-register.html', {}, context_instance = RequestContext (żądanie));
-
słuchaj x.x.x.x: 8000;
nazwa_serwera x.x.x.x .;