django - Django不加载静态文件但成功收集静态
问题描述
我遇到了一个问题,我需要从开发切换到生产,我成功地收集静态并将调试切换为 False,但是当我在本地、docker run 或谷歌微服务中运行我的服务器时,静态文件夹不会加载任何文件,所以我得到了只有纯 html,除非你使用 --insecure 命令。
这是我相关的 settings.py 行:
DEBUG = True
ALLOWED_HOSTS = ['*']
TATIC_URL = '/static/'
STATICFILES_DIRS = (
os.path.join(BASE_DIR, 'estandar_diseno/static'),
)
STATIC_ROOT = os.path.join(BASE_DIR, 'production_static')
DATA_UPLOAD_MAX_MEMORY_SIZE = 5242880
GS_CREDENTIALS = service_account.Credentials.from_service_account_file(
os.path.join(BASE_DIR, 'credencial.json'))
DEFAULT_FILE_STORAGE = 'storages.backends.gcloud.GoogleCloudStorage'
GS_PROJECT_ID = 'green-carrier-xxxxx'
GS_BUCKET_NAME = 'inversiones-admision'
UPLOAD_ROOT = 'reportes/'
MEDIA_ROOT = 'reportes'
MEDIA_URL = 'https://storage.googleapis.com/{}/'.format(GS_BUCKET_NAME)
if not DEBUG:
import mimetypes
mimetypes.add_type("application/javascript", ".js", True)
所以它假设带有媒体文件的存储桶只保存来自用户的上传文件,并将所有静态文件放在 docker 容器上,然后上传到谷歌微服务,但我遇到的问题甚至是在本地,正如我所说的那样不起作用,我错过了一些东西? collectstatic 运行良好,我复制了所有文件。
解决方案
推荐阅读
- github - 如何在 Github 中合并子模块
- python - 在admin页面django中定义一个可以修改的全局变量,以及关于字段的问题
- angularjs - 你如何在 Jasmine 测试中模拟 angularJS 控制器 $scope 变量?
- wordpress - 从多个目录访问多语言 WordPress 博客
- python - 我正在尝试用 Python 制作闹钟(来自教程),Playsound 没有激活声音
- string - Powershell - 选择文件名的特定部分
- java - 使用比较器对字符串数组进行排序(特定排序情况)
- ios - AVCaptureDevice 的 exposurePointOfInterest 不起作用
- r - 如何从 R 中的“A”矩阵中获取元素
- class - 为 Segment 分配足够的内存以存储多达二十 (20) 个块