【问题标题】:Django 1.2 - Management - Command - Can't Run manage.py commands on crontabDjango 1.2 - 管理 - 命令 - 无法在 crontab 上运行 manage.py 命令
【发布时间】:2012-10-10 15:08:18
【问题描述】:

在我的项目中,我有一个应用程序:带有管理命令的 my_app:my_command.py

在 SSH 上我尝试: my/folder/project/and/app/python2.4 manage.pymy_command 一切正常

但如果我尝试:python2.4 /my/folder/project/and/app/manage.py my_command,manage.py 不知道我的命令...

我尝试在 crontab 上运行我的命令..

谢谢 劳伦特

【问题讨论】:

  • python2.4 在 vi​​rtualenv 中吗?
  • 问题是我不知道......我的服务器在centos 5.5上,我不是专家......所以我尽力做到最好,拥有python2.6和python2.4。 .. 无论如何,我的 django 安装仅在 python2.4 上... python 单独运行 python2.6 但没有在 python2.6 上安装 django ... 我的服务器设置让我很困惑...
  • 在 shell 中,输入which python2.4,它会告诉你 Python 2.4 的位置。然后,在您的 crontab 中,使用 Python 2.4 的完整路径作为命令。 (例如/path/to/python2.4 /my/folder/project/and/app/manage.py my_command
  • 我这样做了...找到 /usr/bin/python2.4.. 所以在控制台上尝试:/usr/bin/python2.4 /var/www/vhosts/mydomaine/subdomains/django/httpdocs/myprojects/manage.py my_command --> 未知命令

标签: django command crontab manage.py


【解决方案1】:

根据我的经验,我遇到此类问题有几个原因。

我会先检查使用的 python 解释器。如果您使用的是 virtualenv 或类似的东西,您应该确保您使用的是正确的 python 可执行文件。

如果你的服务器有 selinux,你应该确保它不会拒绝 cron 读取某些文件。

我也遇到过这样的问题,因为设置文件(我使用单独的设置文件以使其不那么冗长)不存在。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-11-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-07-31
    • 2019-09-21
    相关资源
    最近更新 更多