【发布时间】:2020-08-22 16:03:26
【问题描述】:
我已设法使我的 Django 应用程序从 VPS 位置运行,但现在它不加载应用程序模板请求的静态文件之一。
应用路径是'http://dev.apps.net/tacdb/'
settings.py 中的静态文件配置:
STATIC_URL = "/static/"
STATIC_ROOT = os.path.join(BASE_DIR, "mysite/static")
# Site name.
SITE_NAME = basename(DJANGO_ROOT)
# Absolute filesystem path to the top-level project folder.
SITE_ROOT = dirname(DJANGO_ROOT)
STATICFILES_DIRS = (os.path.join(BASE_DIR, "mysite", "/static"),)
html文件中的javascript请求:
{% block javascript %}
<script src="{% static '/js/books.js' %}"></script>
{% endblock %}
html 文件位于 /tacdb/mysite/tacdashboard/templates/items/item_list.html
对静态文件的请求是 http://dev.apps.net/static/js/books.js
我在 Apache 中为此应用程序使用代理传递。如果我使用 runserver 直接在端口上运行应用程序,一切正常。
有什么问题吗?
附:当我将位置添加到 proxypass 时出现了这个问题。
非常感谢!
<VirtualHost *:80>
ServerName dev.apps.net
ProxyRequests Off
ProxyPreserveHost On
ProxyVia Full
<Proxy *>
Require all granted
</Proxy>
<Location /nodejs>
ProxyPass http://127.0.0.1:8090
ProxyPassReverse http://127.0.0.1:8090
</Location>
<Location /tacdb>
ProxyPass http://0.0.0.0:8080/tacdb
ProxyPassReverse http://0.0.0.0:8080/tacdb
</Location>
</VirtualHost>
【问题讨论】:
-
您能分享一下您的代理通行证配置文件吗?
-
当然。我已将其添加到主要问题中。
-
只有这个文件找不到(books.js)。其他工作?! :|
-
不应该是
<script src="{% static 'name-of-app/js/books.js' %}"></script>吗?你能分享一下你是如何引用所有其他正在工作的 js 的吗? -
这是在 base.html
<script src="{% static 'js/bootstrap.min.js' %}"></script>