Django:无法找到静态文件文件夹

问题描述

我正在尝试使用python软件包 django-pyas2 https://github.com/abhishek-ram/django-pyas2

来设置AS2服务器

当我使用 runserver 命令时,一切都运行良好,但是当尝试使用IIS(10)托管我的Web应用程序时,我注意到当我加载任何静态文件时,加载页面

我去过无数论坛/文档,我知道我需要设置IIS来提供这些文件,但是我无法回答一个相当愚蠢的问题:

django-pyas2 / static / 文件夹在哪里???

在github页面上没有这样的文件夹。 使用 runserver 命令时,django设法以某种方式从静态文件夹中找到所有静态文件(.css,.js,.png),但对于该文件夹的实际存储位置我仍然一无所知

我一直在以下位置搜索无济于事:(我在Windows Server 2016上使用虚拟环境)

  • 我自己的项目
  • 我的venv的 site-packages \ django-pyas2 文件
  • 中C:\ python37 \ Lib \ site-packages \ django-pyas2
  • 中C:\ User \ AppData \ Roaming \ Python \ python37 \ Lib \ site-packages \ django-pyas2

我也尝试过使用命令 collectstatic ,但是我首先需要知道实际的 / static / 文件夹存储在哪里。

我已经仔细检查过,文件显然存储在本地而不是CDN上。这真让我发疯,我可以明确地寻求别人的帮助!

在此先感谢❤

编辑:

my IIS wfastcgi configuration

my IIS advanced settings

解决方法

我不确定IIS(10)的工作方式,但这通常是解决方法。

转到settings.py并添加静态文件的路径。

STATIC_URL = '/static/'
STATIC_ROOT = os.path.join(BASE_DIR,'static')#new

下一步在控制台(命令提示符/终端/外壳)上运行

python manage.py collectstatic

这应该有效

,

好的,所以我终于在这个位置找到了我要查找的静态文件夹:

\ Lib \ site-packages \ django \ contrib \ admin \ static

我相信 django_pyas2 软件包使用的是Django中已随附的一些默认js / css,但我找不到它,因为它已埋在Django的文件中。

对于那些遇到相同问题的人,下面是我要使其与IIS(10)一起使用的步骤:

  • 将静态文件夹从django包复制/粘贴到我项目的根目录
  • 进入IIS管理器,右键单击我的网站> 添加应用程序
  • 对于应用程序别名“静态” ,对于路径
  • /!\重要/!\ 左键单击新创建的“静态”应用程序,转到“映射管理器”,然后删除关联的FastCGIModule

无需在settings.py中执行任何操作,也无需执行collectstatic命令。

那之后工作正常!

感谢您的帮助。

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...