Python

在 Hostgator 上使用 fastcgi 安裝 OSQA 時出現內部伺服器錯誤

  • October 20, 2012

在開始之前,我沒有 Python 經驗或 WSGI 或 FastCGI,但我正在嘗試在 Hostgator 的共享主機帳戶上安裝OSQA 。

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

  1. 安裝 markdown 和 html5lib 使用:
pip install --user markdown

這個安裝在/home/user/.local/lib/python2.6/* 2. 在 /home/user/osqa 查看 OSQA 程式碼 3. 替換了 OSQA 安裝的數據庫設置 4. 生成的數據庫和遷移:

python manage.py syncdb –all

python manage.py migrate forum --fake
  1. 創建了域 mysqite.com 指向的目錄 mysite.com
  2. 在 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]
  1. 在 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")
  1. chmod +x osqa.fcgi

現在訪問 url mysite.com,只會給我一個 500 錯誤。

我解決了這個問題。我不確定,究竟是什麼修復了它,但這是我所做的所有更改:

  1. 修改 .htaccess 以將 osqa.fcgi 替換為 mysite.fcgi
  2. 將文件 osqa.fcgi 重命名為 mysite.fcgi
  3. 在 mysite.fcgi 的頂部,替換了 python 路徑

引用自:https://serverfault.com/questions/440484