Opened 19 years ago

Closed 19 years ago

Last modified 18 years ago

#896 closed defect (fixed)

[patch] Error serving media files throught django development server on windows

Reported by: Petar Marić <petar.maric@…> Owned by: Adrian Holovaty
Component: Core (Other) Version: dev
Severity: normal Keywords:
Cc: Triage Stage: Unreviewed
Has patch: yes Needs documentation: no
Needs tests: no Patch needs improvement: no
Easy pickings: no UI/UX: no

Description

Symptoms: unable to serve media files on windows, getting a large number of 302 redirects

Problem: It seems that something is replacing slashes with backslashes in the url as shown in django-admins runserver log:

[24/Nov/2005 09:15:23] "GET /media/css/print.css HTTP/1.1" 302 0
[24/Nov/2005 09:15:23] "GET /media/css/css%5Cprint.css HTTP/1.1" 302 0
[24/Nov/2005 09:15:23] "GET /media/css/css%5Cprint.css HTTP/1.1" 302 0
[24/Nov/2005 09:15:23] "GET /media/css/css%5Cprint.css HTTP/1.1" 302 0
...

Solution: replace backslashes in newpath with slashes

Patch:

Index: static.py
===================================================================
--- static.py	(revision 1396)
+++ static.py	(working copy)
@@ -34,7 +34,7 @@
         if part in (os.curdir, os.pardir):
             # strip '.' amd '..' in path
             continue
-        newpath = os.path.join(newpath, part)
+        newpath = os.path.join(newpath, part).replace('\\', '/')
     if newpath and path != newpath:
         return HttpResponseRedirect(newpath)
     fullpath = os.path.join(document_root, newpath) 

Credits: nesh for helping me create this patch

Change History (3)

comment:1 by sune.kirkeby@…, 19 years ago

That should be:

-        newpath = os.path.join(newpath, part)
+        newpath = '/'.join(newpath, part)

comment:2 by Adrian Holovaty, 19 years ago

Resolution: fixed
Status: newclosed

(In [1402]) Fixed #896 -- Fixed error in filesystem serve view in Windows. Thanks, Petar Mari?\196?\135 and nesh

comment:3 by Adrian Holovaty, 18 years ago

milestone: Version 0.91

Milestone Version 0.91 deleted

Note: See TracTickets for help on using tickets.
Back to Top