【问题标题】:Hosting Django on a shared FastCGI host在共享的 FastCGI 主机上托管 Django
【发布时间】:2010-07-27 16:09:23
【问题描述】:

我正在尝试使用 FastCGI 在 iPage.com 上设置 django 共享主机,但我一直遇到问题。 CGI 脚本以文本形式存在于浏览器中,而不是执行。下面是 .htaccess 和 fcgi 脚本

.htacess

AddHandler fastcgi-script .fcgi
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ cgi-bin/mysite.fcgi/$1 [QSA,L]

下面是fcgi脚本

#!/usr/bin/python
import sys, os

# Add a custom Python path.
sys.path.insert(0, "/home/users/web/b2374/ipg.navtejportfoliocom/django")

# Switch to the directory of your project. (Optional.)
os.chdir("/home/user/myproject")

# Set the DJANGO_SETTINGS_MODULE environment variable.
os.environ['DJANGO_SETTINGS_MODULE'] = "tej.settings"

from django.core.servers.fastcgi import runfastcgi
runfastcgi(method="threaded", daemonize="false")

我做错了什么?

【问题讨论】:

    标签: django hosting fastcgi


    【解决方案1】:

    您是否启用了文件的执行权限?在您的 FTP 客户端中,为用户/组/其他启用“执行”位。否则 apache 会认为它只需要提供文件。

    如果你有 Linux shell 访问权限,你也可以使用chmod +x mysite.fcgi

    【讨论】:

      【解决方案2】:

      您说的是 FastCGI,但您使用的是 CGI 方法。 FastCGI 不是一个更快的 CGI 实现,它们是两个完全不同的东西。

      【讨论】:

      • fcgi 在根文件夹上不起作用,所以我决定将它复制到 CGI。 plus djangoproject 建议对 django 使用 fcgi,因为 cgi 涉及为每个加载的页面调用 python+django+content 而 fcgi 消除了重新获取
      【解决方案3】:

      哈维尔是对的,这行不通。关于如何使用 FastCGI 进行部署的文档是 here - 你需要安装 Flup 然后在 Django 中运行 FastCGI 服务器。

      【讨论】:

      猜你喜欢
      • 2021-10-13
      • 1970-01-01
      • 1970-01-01
      • 2018-11-06
      • 2016-10-07
      • 2023-04-05
      • 1970-01-01
      • 2020-12-24
      • 2012-07-15
      相关资源
      最近更新 更多