DjangoがDebug=Falseになると、静的リソースに正確にアクセスできない解決策
問題の説明
Debugモードで正常にアクセスできる場合、Falseに切り替えると、ページから静的リソースを要求できなくなります.次の手順に従います.
1.アクセス可能なドメイン名の設定
2.urlを静的ファイルパスにマッピングする追加
3.異常処理ページの設定
環境:Django 2.2
一、settingを設定する.py
二、urlsを設定する.py
三、viewを設定する.py
Debugモードで正常にアクセスできる場合、Falseに切り替えると、ページから静的リソースを要求できなくなります.次の手順に従います.
1.アクセス可能なドメイン名の設定
2.urlを静的ファイルパスにマッピングする追加
3.異常処理ページの設定
環境:Django 2.2
一、settingを設定する.py
# , localhost
ALLOWED_HOSTS = ['*']
...
...
#
STATIC_URL = '/static/'
STATIC_ROOT = 'static'
二、urlsを設定する.py
from django.conf.urls import url
from django.views import static
from django.conf import settings
from . import view
urlpatterns = [
path('admin/', admin.site.urls),
path('', view.index),
........
# ,
url(r'^static/(?P.*)$', static.serve,
{'document_root': settings.STATIC_ROOT}, name='static')
]
#
handler403 = view.page_permission_denied
handler404 = view.page_not_found
handler500 = view.page_inter_error
三、viewを設定する.py
def page_not_found(request):
from django.shortcuts import render
return render(request, '404.html')
...
...