Ve výchozím nastavení djanga jsou statické soubory projektu v relatvní složce static
settings.py: STATIC_URL = '/static/' na vývojovém stroji jsou pak statické soubory přístupné na url: http://localhost:8000/static/file.jpg Rád bych ale statické soubory zpřístupnil na doméně 3. řádu, tedy na url: http://static.localhost:8000/file.jpg Důvodem je třeba rychlejší přístup k souborům (neposílá se cookie) atd. Nastavím tedy v settings.py: STATIC_URL = 'http://static.localhost:8000/' STATIC_ROOT = os.path.join(BASE_DIR, "static") poté zkontroluji dostupnost statického souboru > manage.py findstatic --verbosity 2 file.jpg No matching file found for 'file.jpg'. Looking in the following locations: C:\Program Files\Python36\lib\site-packages\django\contrib\admin\static Soubor tedy vůbec nebyl nalezen. Předpokládám, že STATIC_ROOT se používá jen pro získávání statických souborů aplikací a proto nebyl soubor nalezen. Nebo je to jinak? Nastavím tedy settings.py jinak: STATIC_URL = 'http://static.localhost:8000/' STATICFILES_DIRS = [ os.path.join(BASE_DIR, "static"), ] poté zkontroluji dostupnost statického souboru > manage.py findstatic --verbosity 2 file.jpg Found 'file.jpg' here: D:\Document\Development\Python\Testproject\static\file.jpg Looking in the following locations: D:\Document\Development\Python\Testproject\static C:\Program Files\Python36\lib\site-packages\django\contrib\admin\static Soubor je nalezen :) Nyní se pokusím k souboru přistoupit v prohlížeči přes url: http://static.localhost:8000/file.jpg ale obdržím 404, v konzoli je: Not Found: /file.jpg [25/Feb/2018 17:37:30] "GET /file.jpg HTTP/1.1" 404 1975 Otázka 1: Proč je po nastavení STATIC_URL a STATIC_ROOT z url nedostupný obsah složky STATIC_ROOT ? Otázka 2: Je správnější nastavit STATIC_ROOT nebo STATICFILES_DIRS? Oboje nastavit shodně nelze. Otázka 3: Co musím udělat, abych se přes URL domény 3. řádu dostal ke statickému souboru? Co dělám špatně? Díky moc za reakce. -- -- E-mailová skupina django-cs@googlegroups.com Správa: http://groups.google.cz/group/django-cs --- Tuto zprávu jste obdrželi, protože jste přihlášeni k odběru skupiny django-cs ve Skupinách Google. Chcete-li zrušit odběr skupiny a přestat dostávat e-maily ze skupiny, zašlete e-mail na adresu django-cs+unsubscr...@googlegroups.com. Chcete-li zobrazit tuto diskusi na webu, navštivte https://groups.google.com/d/msgid/django-cs/c490316b-4b62-4e04-8bb6-2a14a59777f6%40googlegroups.com. Další možnosti najdete na adrese https://groups.google.com/d/optout.