di file serving django problemi
Domanda
ho nel mio modelli di URL,
urlpatterns += patterns('',
(r'^(?P<path>.*)$', 'django.views.static.serve',
{'document_root': '/home/tipu/Dropbox/dev/workspace/search/images'})
Nel mio modello quando faccio
<link rel="stylesheet" type="text/css" href="{{ MEDIA_URL }}style.css" />
Serve il css bene. Ma il logo.png di file, che si trova nella stessa directory di style.css, non mostra quando faccio questo:
<img src = "{{ MEDIA_URL }}logo.png" id = "logo" />
Qualsiasi idea del perché?
Modifica:
Qui sono nella stessa directory: http://i.imgur.com/Wlssb.png
root@tipu_ubuntu:/home/tipu/Dropbox/dev/workspace/search# curl -I http://localhost:8080/logo.png
HTTP/1.1 404 Not Found
Date: Sun, 30 May 2010 19:56:54 GMT
Server: Apache/2.2.14 (Ubuntu)
Vary: Accept-Encoding
Connection: close
Content-Type: text/html; charset=iso-8859-1
root@tipu_ubuntu:/home/tipu/Dropbox/dev/workspace/search# curl -I http://localhost:8080/style.css
HTTP/1.1 200 OK
Date: Sun, 30 May 2010 19:57:06 GMT
Server: Apache/2.2.14 (Ubuntu)
Last-Modified: Thu, 27 May 2010 03:28:14 GMT
Content-Length: 1447
Content-Type: text/css
Vary: Accept-Encoding
Connection: close
Soluzione 2
Non ho risolto il problema alla mano, ma, sono stato in grado di finire per servire i file attraverso apache stesso. Ho usato la soluzione trovata qui: http: // oebfare. com / blog / 2007 / DEC / 31 / django-e-statiche-files /
Altri suggerimenti
Molto strano. Quello che il codice di errore viene restituito quando si esegue curl -I http://localhost:8000/logo.png
?
Appena fuori dalla parte superiore della testa, i possibili problemi potrebbe essere:
- Typo (nel nome del file o nel modello)
- Permessi
- Dati Bad (è davvero un PNG? C'è arrivato svuotato in qualche modo?)
Inoltre, il urlpatterns
che hai lì sembrano mettere media presso /
. Presumo che è quello che vuoi?
Questo Django url sembra OK per me.
I due richieste ricciolo stanno colpendo Apache (Server: Apache / 2.2.14 (Ubuntu)), non Django, in modo che le urlpatterns non possono avere nulla a che fare con gli errori che si sta vedendo. Sei sicuro di Apache sta guardando quella directory e non un altro? Prova scambiando l'immagine per una diversa e vedere se cambia -. Se non lo fa, saprete che state ottenendo i vostri percorsi di directory confusi