django - 实现与 PREPEND_WWW 相反的效果的最佳方法(例如从 "www"重定向到根域)?

标签 django apache nginx

Django 的 PREPEND_WWW 加上 Common 中间件会自动将所有根域流量重定向到“www”。领域。我怎样才能最好地达到相反的效果?在 django 下? Apache ? Ngnix?

最佳答案

如果可能的话,您可能希望在 django 之外进行这种重定向。以下是 Nginx 的说明和 Apache 。 (您需要根据所需的非 wwwwww 偏好调整配置。)。

至于为什么要在 django 之外进行,答案是性能。这里不需要让 django 处理请求和响应,因为它可以在请求生命周期的早期完成。这意味着您可以保存 django 进程以供实际需要时使用。

您应该使用 PREPEND_WWW 或类似的唯一原因 custom middleware ,是指您无权访问服务器配置(例如某些共享托管环境)。它被用作最后的手段。

关于django - 实现与 PREPEND_WWW 相反的效果的最佳方法(例如从 "www"重定向到根域)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19991339/

相关文章:

python - django 中的多语言 url 如何工作?

django - 在 Django 模型中设置局部变量

java - 构建文件中“找不到主类错误”

Nginx 无法在 Windows 10 上创建目录,错误为 : nginx: CreateFile(). ..failed

javascript - 使用django模板中Javascript变量的值来渲染模板上下文

python - 名称错误 : name 'StaticLiveServerCase' is not defined

apache - 如何查找 Apache 在 Linux 中使用的 MPM 模型(worker、prefork 或 event)

apache - 将 apache 作为服务运行的好处?

angular - 为什么 NGINX 给我的 Angular 应用程序一个空白页?

nginx 代理服务器无法上传大于 1 MB 的文件