【问题标题】:edit urls.py require webserver restart?编辑 urls.py 需要重启网络服务器吗?
【发布时间】:2011-03-24 07:32:45
【问题描述】:

非常基本的问题。学习 Django,现在使用为我设置的 nginx 开发服务器。我已经在我的 django 项目中编辑了我的 urls.py 文件,但它没有注册更改。每次编辑 urls.py 文件时是否需要重新启动 nginx?我没有 root 访问权限,所以这是不可能的,或者有本地级别的方法吗?

编辑: 原来有答案。我只需要触摸我网站的 .wsgi 文件。

【问题讨论】:

    标签: django nginx


    【解决方案1】:

    是的,每次更改代码时都需要重新启动服务器。

    这就是您应该使用内置开发服务器进行开发的原因 - 这就是它的用途。每当您进行代码更改时,它或多或少会自动为您重新启动。当事情变得更加稳定时,您可以转而使用需要重新启动的外部服务器。

    或者,可能有一种方法可以让 nginx 在代码更改时自行重启 - 这当然可以使用 Apache 和 mod_wsgi。

    【讨论】:

    • 这对我来说似乎有点愚蠢。将您的开发代码与您的网络服务器紧密耦合。我虽然 django 的整个想法是相反的。我已经在本地设置了我的代码,但我现在希望在开发服务器上进行更改。
    • 我认为这不仅仅是 Django 的事情。所有 .py 文件都被编译为 .pyc 文件,并且在您重新启动服务器之前通常不会刷新。所以不仅仅是 url.py 文件在做这件事,它可以是其中任何一个。这就是为什么无论您编辑和更改了哪些文件,重新启动服务器都是一个明智的主意。烦人,但确实如此。
    • 谢谢,这很烦人。如果一个人想让一群学生在 Web 服务器上托管自己的 django 项目,但不给他们 root 访问权限怎么办。当然,允许这种情况是有意义的。您不需要 root 访问权限来开发 django 应用程序。如果是这样的话,只是我的想法,我现在无能为力,只能等待我的朋友以 root 访问权限回来。
    • 这与django无关,是关于mod_wsgi的工作方式。我认识的其他人,例如 mod_python 和 mod_perl 也有同样的问题。 --------编辑--------- 抱歉,我打开了页面,没有看到 Jordan Reiter 的回答。
    • 我只是认为应该有一种本地的方式来处理它。例如。在 apache 上,mod 重写可以写入本地 .htacess 文件,无需重新启动服务器。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-04-24
    • 1970-01-01
    • 2014-05-09
    • 1970-01-01
    • 2020-05-03
    • 2018-01-30
    相关资源
    最近更新 更多