Статические файлы не загружаются Django + Azure Web App

https://github.com/EPICS-HDR/New-Code-Layout Это репо

Я перепробовал все, что можно найти в Интернете. (Новичок в веб-разработке, нужна помощь)

STATIC_URL = 'static/' STATICFILES_DIRS = [ BASE_DIR / 'services' /'static', ] STATIC_ROOT = os.path. join(BASE_DIR, 'staticfiles') STATICFILES_STORAGE = "django.contrib.staticfiles.storage.StaticFilesStorage"

в urls.py:

] + static(settings.STATIC_URL, document_root=settings.STATIC_ROOT)

standingrock.azurewebsites.net

Я попробовал ваш код, внес некоторые изменения и смог отрисовать статические файлы без каких-либо проблем.

Убедитесь, что ваш wsgi.py правильно установил DJANGO_SETTINGS_MODULE в 'config.settings', и убедитесь, что структура вашего проекта последовательна. Убедитесь, что ваши пакеты актуальны.

Settings.py:

import os
from pathlib import Path
from .info import *
BASE_DIR = Path(__file__).resolve().parent.parent
EMAIL_USE_TLS = EMAIL_USE_TLS
EMAIL_HOST = EMAIL_HOST
EMAIL_HOST_USER = EMAIL_HOST_USER
EMAIL_HOST_PASSWORD = EMAIL_HOST_PASSWORD
EMAIL_PORT = EMAIL_PORT
ADMINS = (
    ('Vansh Thakkar', 'thakkar9@purdue.edu'),
)
SECRET_KEY = 'secretkey'
DEBUG = True
ALLOWED_HOSTS = ['*'] 
STATIC_URL = '/static/'
STATICFILES_DIRS = [
    BASE_DIR / 'services' / 'static',
]
STATIC_ROOT = os.path.join(BASE_DIR, 'staticfiles')
INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'services',
    'whitenoise.runserver_nostatic'
]
MIDDLEWARE = [
    'django.middleware.security.SecurityMiddleware',
    'whitenoise.middleware.WhiteNoiseMiddleware',
    'django.contrib.sessions.middleware.SessionMiddleware',
    'django.middleware.common.CommonMiddleware',
    'django.middleware.csrf.CsrfViewMiddleware',
    'django.contrib.auth.middleware.AuthenticationMiddleware',
    'django.contrib.messages.middleware.MessageMiddleware',
    'django.middleware.clickjacking.XFrameOptionsMiddleware',
]
TEMPLATES = [
    {
        'BACKEND': 'django.template.backends.django.DjangoTemplates',
        'DIRS': [BASE_DIR / 'templates'],  
        'APP_DIRS': True,
        'OPTIONS': {
            'context_processors': [
                'django.template.context_processors.debug',
                'django.template.context_processors.request',
                'django.contrib.auth.context_processors.auth',
                'django.contrib.messages.context_processors.messages',
            ],
        },
    },
]
ROOT_URLCONF = 'config.urls'
STATICFILES_STORAGE = ('whitenoise.storage.CompressedManifestStaticFilesStorage')

вам нужно включить {% load static %} в верхней части файла, перед любыми ссылками на статические файлы.

views.py:

urls.py:

from django.contrib import admin
from django.urls import path
from services.views import index, customgauge, customgaugegraph, customdam, customdamgraph, test, custommesonet, custommesonetgraph, tabs, tabstest, maptabs, homepage, forecast, about, register, signup, signin, signout, vansh
from django.contrib.staticfiles.urls import staticfiles_urlpatterns
from services import views  # Import the views module containing your view functions
from django.conf import settings
from django.conf.urls.static import static
urlpatterns = [
    path('admin/', admin.site.urls),
    path('customgaugegraph/', customgaugegraph),
    path('customdamgraph/', customdamgraph),
    path('customdam/', customdam),
    path('custommesonetgraph/', custommesonetgraph),
    path('map/', index),
    path('homep/', test),
    path('maptabs/', maptabs),
    path('home/', homepage),
    path('forecast/', forecast),
    path('about/', about),
    path('register/', register),
    path('signup/', signup, name='signup'), 
    path('signin/', signin, name='signin'), 
    path('signout/', signout, name='signout'), 
    path('favorites/', views.favorites, name='favorites'),
    path('vansh/', vansh)
]
urlpatterns += [
    path('', homepage), 
]
urlpatterns += static(settings.STATIC_URL, document_root=settings.STATIC_ROOT)
urlpatterns += staticfiles_urlpatterns()

Выполните следующие команды для сбора статических файлов в production

python manage.py collecstatic
python manage.py migrate

Убедитесь, что вы изменили DEBUG =False в файле settings.py перед развертыванием веб-приложения в службе приложений Azure

локальный выход: enter image description here

enter image description here

Вот вывод после развертывания: enter image description here

Вернуться на верх