我正在使用ADL LRS设置LRS(学习记录存储)系统供我自己使用。它使用TIN CAN API
。我正在使用ubuntu服务器
如文档所述,对于LRS的设置,我需要安装django和将其设置为LRS。 ADL_LRS内的adl_lrs文件夹包含django(settings.py)的设置文件。我对django有点陌生,所以我无法完全理解文件这部分的含义-
# Absolute filesystem path to the directory that will hold user-uploaded files.
# Example: "/home/media/media.lawrence.com/media/"
MEDIA_ROOT = '/var/www/adllrs/media/'
# URL that handles the media served from MEDIA_ROOT. Make sure to use a
# trailing slash.
# Examples: "http://media.lawrence.com/media/", "http://my-site-name.com/media/"
MEDIA_URL = ''
# Absolute path to the directory static files should be collected to.
# Don't put anything in this directory yourself; store your static files
# in apps' "static/" subdirectories and in STATICFILES_DIRS.
# Example: "/home/media/media.lawrence.com/static/"
STATIC_ROOT = ''
# URL prefix for static files.
# Example: "http://media.lawrence.com/static/"
STATIC_URL = '/static/'
# Additional locations of static files
STATICFILES_DIRS = (
# Put strings here, like "/home/html/static" or "C:/www/django/static".
# Always use forward slashes, even on Windows.
# Don't forget to use absolute paths, not relative paths.
)
它指出-
1.
MEDIA_ROOT = '/var/www/adllrs/media/'
我认为这意味着将媒体文件(例如歌曲和视频)放在此位置2.我假定的
STATIC_ROOT = ''
表示包含HTML,CSS,js文件的静态目录的路径。在克隆git时,我设置了LRS,该LRS刚开始但所有CSS都损坏了。我调查了DOM检查器,其中CSS文件的链接类似于-
http://my-site-name.com:8000/static/admin/css/base.css
当我访问上述网址以查看发生了什么时,我得到了以下HTML输出(与访问首页时相同,即http://my-site-name.com:8000)-
Page not found (404)
Request Method: GET
Request URL: http://my-site-name.com:8000/
Using the URLconf defined in adl_lrs.urls, Django tried these URL patterns, in this order:
^XAPI/
^xapi/
^admin/
The current URL, , didn't match any of these.
我的urls.py看起来像-
url(r'^XAPI/', include('lrs.urls')),
url(r'^xapi/', include('lrs.urls')),
# Uncomment the admin/doc line below to enable admin documentation:
# url(r'^admin/doc/', include('django.contrib.admindocs.urls')),
# Uncomment the next line to enable the admin:
url(r'^admin/', include(admin.site.urls))
显然,我没有在指向错误的urls.py中提及我的主页。那么我应该在哪里放置CSS,JS文件来修复损坏的CSS并为此创建默认主页?而且我也尝试过从wordpress发送锡罐语句,但是我无法在服务器上获得该语句。谁能告诉我如何在ubuntu上设置正确的ADL LRS。
PS-不要告诉我阅读文档,因为我已经读了十几遍了。告诉我在实施文档时我错了。
最佳答案
听起来您的LRS只运行了gunicorn。 gunicorn本身不提供JS和CSS之类的静态文件。我找到了另一个SO页面,该页面讨论了用gunicorn提供静态文件:https://stackoverflow.com/a/12801140/1187723
至于LRS,当我在本地开发和测试时,我运行Django的测试服务器,该服务器将提供静态文件。在项目的根目录ADL_LRS中,以python manage.py runserver
开头。 https://docs.djangoproject.com/en/1.4/ref/django-admin/#runserver-port-or-address-port
在https://lrs.adlnet.gov/xapi/处部署LRS时,我们使用了配置为提供静态文件的nginx。我们在https://github.com/adlnet/ADL_LRS/wiki/Using-Nginx-for-Production上进行了一些初始设置