在 Hostgator 上使用 fastcgi 安装 OSQA 时出现内部服务器错误

在 Hostgator 上使用 fastcgi 安装 OSQA 时出现内部服务器错误

在开始之前,我没有任何 Python 经验,也没有 WSGI 或 FastCGI,但我正在尝试安装海外品质保证局在 Hostgator 的共享主机账户上。

到目前为止,我所做的是:

  1. 安装 markdown 和 html5lib 使用:

    pip install --user markdown
    

    这安装在/home/user/.local/lib/python2.6/*

  2. 检查了 /home/user/osqa 处的 OSQA 代码

  3. 替换 OSQA 安装的 DB 设置

  4. 生成数据库并迁移:

    python manage.py syncdb –all
    
    python manage.py migrate forum --fake
    
  5. 创建了 mysite.com 目录,域名 mysqite.com 指向该目录

  6. 在 mysite.com 内创建一个 .htaccess 文件:

    AddHandler fcgid-script .fcgi 
    Options +SymLinksIfOwnerMatch
    RewriteEngine On
    RewriteBase /
    RewriteRule ^(media/.*)$ - [L]
    RewriteRule ^(adminmedia/.*)$ - [L]
    RewriteCond %{REQUEST_URI} !(osqa.fcgi)
    RewriteRule ^(.*)$ osqa.fcgi/$1 [L]
    
  7. 在 mysite.com 内创建了一个名为 osqa.fcgi 的文件:

    #!/home/username/python/bin/python  
    import os, sys
    
    sys.path.insert(0, "/home/your_username/")
    sys.path.append("/home/your_username/osqa")
    os.chdir("/home/your_username/osqa")
    
    os.environ['DJANGO_SETTINGS_MODULE'] = "osqa.settings"
    
    from django.core.servers.fastcgi import runfastcgi
    runfastcgi(method="threaded", daemonize="false")
    
  8. chmod +x osqa.fcgi

现在访问 URL mysite.com,只会出现 500 错误。

答案1

我修复了这个问题。我不确定到底是什么修复了它,但以下是我所做的所有更改:

  1. 修改 .htaccess,将 osqa.fcgi 替换为 mysite.fcgi
  2. 将文件 osqa.fcgi 重命名为 mysite.fcgi
  3. 在 mysite.fcgi 的顶部,替换 python 路径

相关内容