我正在使用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上进行了一些初始设置

10-01 02:03