此存储后端将文件按其哈希值命名,并添加一个具有原始名称的符号链接。无重复,您可以随心所欲地进行SEO。
项目描述
Seo ville slugger将解决您在Django、媒体文件和文件名方面遇到的问题。
Django的默认存储后端有一些相当令人烦恼的行为。当第二次上传相同的文件时,您会在磁盘上得到第二个文件,并在末尾添加一些奇怪的哈希值。
对此不满的有两种人。
需要为磁盘空间付费的人
客户雇佣的SEO人员。
此存储后端将文件按其哈希值命名,并添加一个具有原始名称的符号链接。无重复,您可以随心所欲地进行SEO。
媒体文件和页面速度移动分数
理想情况下,您希望网站的已上传文件具有长缓存过期标题,就像静态文件一样。这通常与漂亮的URL结合使用时会出现问题。当使用SEOStorage时,可以安全地放置长过期标题,因为文件分布在以哈希值的一小部分命名的文件夹中。显然,这个小的哈希值可能会导致冲突,因此存储后端将按照以下方式防止冲突
在极少数情况下,如果我们遇到两个不同文件具有完全相同的文件名,并且由于哈希冲突而最终在同一个文件夹中,新文件将不会获得漂亮的SEO URL。相反,将使用完整的哈希文件名。在这些罕见的情况下,您可能会得到一个SEO不友好的URL。
我们不必担心这个问题,对吧?几乎没有人会注意到!
使用方法
您可以通过将以下内容添加到Django设置中,在全局范围内使用存储后端
DEFAULT_FILE_STORAGE = 'seo.ville.slugger.SEOStorage'
Sorl thumbnail
假设您希望sorl thumbnail也有基于原始文件名的漂亮URL?
THUMBNAIL_BACKEND = 'seo.ville.sorl.SEOThumbnailBackend' THUMBNAIL_STORAGE = 'seo.ville.sorl.SEOThumbnailStorage'
在sorl中,您可以将slug作为参数传递给缩略图标签
{% thumbnail image "330x450" upscale=True slug=slug as thumb %}
设置
HASH_BLOCKSIZE 如果您认为文件散列使用太多或不足够内存,请修改此值 HASH_DIRNAME_SLICE_SIZE 如果您发现碰撞太多,请修改此值。
项目详情
下载文件
下载适合您平台的文件。如果您不确定选择哪个,请了解更多关于 安装包 的信息。
源代码分发
seo-ville-slugger-0.0.7.tar.gz (4.9 kB 查看哈希值)
构建分发
关闭
seo-ville-slugger-0.0.7.tar.gz 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | ac2f02efb3bac6a42a3e84b016751d97ea9c4845f152dbc3b0435ea158d2c667 |
|
MD5 | 709360f0dcca2992ecbdf8315fd991dd |
|
BLAKE2b-256 | 33e19761ac78659117fb7aea582a7599fe2390d7529e22645ee3403083028a45 |
关闭
seo_ville_slugger-0.0.7-py3-none-any.whl 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 59532a009c60fc26dc0ce630ca7758eb42a19d5589da126c6d0754ee5a99cd51 |
|
MD5 | ec8707f45319bd489d62cc997d8946b3 |
|
BLAKE2b-256 | b60c125f0d48d7aad13f569363d4a9aa6ef9e9b5e3466115b40c3926b346f3b7 |