
Bevor ich beginne, ich habe keine Erfahrung mit Python oder WSGI oder FastCGI, aber ich versuche, es zu installierenOSQAauf einem Shared-Hosting-Konto bei Hostgator.
Bisher habe ich Folgendes getan:
Markdown und html5lib installiert unter Verwendung von:
pip install --user markdown
Dies installiert in
/home/user/.local/lib/python2.6/*
habe den OSQA-Code unter /home/user/osqa ausgecheckt
DB-Einstellungen für OSQA-Installation ersetzt
Datenbank generiert und migriert:
python manage.py syncdb –all python manage.py migrate forum --fake
Ein Verzeichnis mysite.com wurde erstellt, auf das die Domain mysqite.com verweist
Eine .htaccess-Datei in mysite.com erstellt:
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]
Eine Datei mit dem Namen osqa.fcgi wurde in mysite.com erstellt:
#!/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")
chmod +x osqa.fcgi
Wenn ich jetzt die URL mysite.com aufrufe, erhalte ich einfach einen 500-Fehler.
Antwort1
Ich habe das Problem behoben. Ich bin nicht sicher, was genau es behoben hat, aber hier sind alle Änderungen, die ich vorgenommen habe:
- Geänderte .htaccess, um osqa.fcgi durch mysite.fcgi zu ersetzen
- Die Datei osqa.fcgi wurde in mysite.fcgi umbenannt.
- Ersetzte oben in mysite.fcgi den Python-Pfad