Skip to main content
 首页 » 编程设计

python之Django 相对 url 和 https

2025年05月04日24三少

我有一个 Django 项目使用 https 作为 url 的特定部分(/account/、/admin/、/purchase/)。

当在其中一个页面上以 https 模式访问时,所有相对内部链接 {% url foo %} 将指向 https://my_url .

但是我不想让这些页面显示为 https :home, contacts ...

这种需求有哪些解决方案?

强制执行绝对 url ?

 http://{{ domain }}{% url foo %}  

不太好。

请您参考如下方法:

正如 Tomasz 所建议的,一种方法是设置中间件以根据需要重定向到 https 或从 https 重定向。这是 one implementation - 这个想法是装饰那些应该在 https 下提供的 View ,当用户导航到一个不应该安全的 View 时,中间件会自动将它们重定向回页面的 http 版本。