在没有 gcc 或 root 访问权限的共享主机上安装需要 gcc 的 python 模块

Shu*_*dal 6 python django hosting gcc virtualenv

我正在使用 Hostgator 作为生产环境共享,并且在使用后安装一些 python 模块时遇到问题:

pip 安装 MySQL-python

pip 安装枕头

结果是:

无法执行 gcc:权限被拒绝错误:命令“gcc”失败,退出状态为 1

服务器限制

  • 没有root权限
  • sudo 不起作用(sudo:有效 uid 不是 0,sudo 是否安装了 setuid root?)
  • 没有海湾合作委员会

问题

  1. 是否有枕头的替代包装。我希望它使用 django ImageField。(就像 pymysql 是 mysql-python 的一个同样强大的替代品)

  2. 我在 root 中安装了像 mysql-python 和 pil 这样的模块,即 pip freeze 没有任何 virtualenv 列出了这些模块。但是我无法在此根环境中安装其他必需的模块,并且在我的 virtualenv 中无法安装 mysql-python 和 pil。可以做些什么吗?我们可以在 virtualenv 中以某种方式导入/使用安装在 root 中的包吗?

  3. 是 hostgator 共享仅适用于 PHP 而不适用于 python/django webapps。我们的流量有限,所以我们使用共享的hostgator。我们应该避免使用hostgator还是共享主机?它们对 python/django 来说是否足够好(我在托管静态/PHP 站点时没有遇到任何问题)。他们是否有太多的问题和限制或性能问题 (FCGI)?如果是,有哪些选择?

Wil*_*and 0

您需要 root 访问权限来安装运行 python 应用程序所需的包。

像 Heroku 这样的 PAAS 是另一种选择,但 Heroku 的免费软件包仅适用于开发您的应用程序,而不是在您获得流量和用户后托管它。

我强烈建议您在 DigitalOcean.com 上获取 VPS。每月 5 美元,您将获得 root 访问权限和更多功能。您还将控制您的整个堆栈。我现在使用 Nginx+Gunicorn 在 DigitalOcean 上托管大约 10 个 Django 项目。