我正在构建一个相当简单的实验来运行网站 它是所有的javascript,所以我需要的服务器就是存储实验结果。我在WebFaction上设置了一个Django服务器,但我的问题是让django将客户端重定向到第一个静态html页面(从js接管的地方)。
我认为我的解决方案应该是这样的(使用django 1.7.1):
urls.py
django.views.generic import RedirectView
urlpatterns = patterns('',
url(r'^$', RedirectView.as_view (url='fudge.html'))
)
在 settings.py 上DEBUG = True
时有效,但当它设置为False
时,我得到:
Not Found
The requested URL /fudge.html was not found on this server.
在 settings.py 中设置STATIC_ROOT = '/AmirStatic/'
,然后按照网上的说明运行python manage.py collectstatic
,但这并没有“做伎俩。
我要么不理解Django中的路径设置,要么没有正确配置,或者我不了解静态网页的使用方式。但我原以为它会比这简单得多。我已经花了3天时间把头发丢掉了。
我非常感谢任何对此提出好建议的人, 非常感谢提前。
哦,我是python,Django和网络开发的新手,如果没有遇到过:)
答案 0 :(得分:3)
在开发时,Django可以为您的静态文件提供服务,但是在投入生产时,django不会为您的静态文件提供服务(不应该,它应该由您的反向代理处理,例如nginx或apache)
请查看django文档的Deploying static files。
答案 1 :(得分:0)
正如@Mihai Zamfir上面提到的那样 - 尝试实际使用URL并链接到视图。然后在视图中定义fudge.html
中包含的模板的逻辑。
示例:
url(r'^fudge/$', views.fudge_view, name='fudge')
这假设您还有urls.py
:
from your_app_name import views