[英]Pyramid: static assets not found
我正在尝试部署Pyramid应用程序。 我的域名是wisderm.com 。 HTML已加载,但没有显示任何静态资产(css,js,图像,字体)。
根据本教程 ,在我的/etc/nginx/sites-enabled/default
文件中,我将静态文件的位置设置如下:
location /static {
root /home/SkinProject;
# this path + /skinproject/static is the absolute
# path to my static directory
expires 30d;
add_header Cache-Control public;
access_log off;
}
在我的__init__.py
,添加了一个静态视图:
config.add_static_view('static', 'static', cache_max_age=3600)
在我的HTML模板中,我尝试了两种提供静态资产的方法:
<link href="{{request.static_url('skinproject:static/css/<mycssfile>)}}">
适用于CSS文件和普通的旧的相对URL,例如/static/images/products/product_name/01.jpg
其他所有内容。
两种方法都行不通。 在Chrome开发者工具下的网络标签中,所有文件的状态码均为404 Not Found
。
我看了一下静态文件上的Cookbook页面 ,但它似乎已经过时了。 我还查看了有关静态资产的官方文档 ,但是对于是否应为每个静态目录注册单独的静态视图感到困惑,例如
config.add_static_view(name='http://wisderm.com/images', path='skinproject:static/images')
config.add_static_view(name='http://wisderm.com/css', path='skinproject:static/css')
正确的做法是什么?
我不是要回答我自己的问题,而是将/static
/etc/nginx/sites-enabled/default
/static/
更改为/static/
,并使所有静态url相对URL对我有用。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.