2012-02-18 25 views
1

我在Strato上有一個web空間包,他們說我可以在他們的web空間上使用Python。目前我使用PHP與CakePHP,因爲PHP的作品,但我寧願使用Python與一些框架,其中Django似乎是匹配。Strato webspace上的Django

所以我上傳了一個小腳本爲/cgi-bin/test.py

#!/usr/bin/env python 
# -*- coding: utf-8 -*- 

print "Content-Type: text/html" 
print 
print "Hello, World!" 

而且它確實打印Hello, World!

然後我試圖導入下面的Django的「你好,世界!「:

try: 
    import django 
except Exception as e: 
    print e 

我得到的是一個‘內部服務器錯誤’。

對Python使用這個服務器是否有意義,還是隻是一些半心半意的支持,反正不會很有趣?

+0

Django是否已經安裝? – Jingo 2012-02-18 14:21:34

+0

我不確定。他們在功能列表中只寫了「Python」。 – 2012-02-18 16:09:05

回答

1

導入不起作用,因爲您尚未設置所需的environment variable。但是,即使您設法讓導入工作,Django deployment也比將腳本放入cgi-bin目錄更復雜一些。您需要選擇一種方法,如WSGI或FastCGI,並配置您的網絡服務器(Apache/Nginx/etc)。

您有三種部署Django的主機。

  • 一個Django友好的共享Web主機。我可以徹底推薦djangohosting.ch,我一直在使用Web Hosting公司的工作。
  • 一個VPS(這可能會更棘手,因爲你必須自己管理更多,但你將有更多的靈活性和更好的性能共享主機)
  • 平臺即服務(PaaS),如ep.io或Heroku的。
+0

在CakePHP中,我只是上傳了一堆PHP文件並完成了。因此,如果不投資一些錢,我就不能在我目前的網絡空間上使用Django? – 2012-02-18 16:08:49

+0

正如我所說的,Djang的部署比上傳一些文件更復雜。使用php或「hello world」python腳本,每次訪問頁面時都會加載整個腳本。 Django部署需要WSGI或FastCGI之類的東西。我不知道Strato是否支持這一點,你不得不問他們。 – Alasdair 2012-02-18 16:27:48

+0

Django有一個內置的開發服務器,所以你可以在你的本地機器上試用它。那麼,如果你決定使用它,djangohosting.ch只有4歐元/月,所以它不是一個非常昂貴的。 – Alasdair 2012-02-18 16:30:49