#!~/your_new_env/bin/python
import sys, os
# Add a custom Python path for your project
sys.path.insert(0, "/must/be/full/path/to/code/yoursite")
# Set the DJANGO_SETTINGS_MODULE environment variable.
# This should match the name for the project you added to the path above
os.environ['DJANGO_SETTINGS_MODULE'] = 'yoursite.settings'
from django.core.servers.fastcgi import runfastcgi
runfastcgi(method="threaded", daemonize="false")
在~/html中,使用以下变体创建或编辑.htaccess文件:
RewriteEngine On
RewriteCond %{REQUEST_URI} !=/mysite.cgi
RewriteRule ^(.*)$ /mysite.cgi [QSA,L,PT]
我不太熟悉GoDaddy的设置,但一般来说,除非特别支持Django(la Dreamhost),否则不能在共享主机上安装它。因此,除非GoDaddy在他们的文档中特别提到Django(或者可能是mod_wsgi或其他东西),否则您可以假设它不受支持。
理论上,您可以从任何具有shell访问权限和足够权限的地方安装Python并运行Django,但是您将无法将Django站点作为共享主机的一部分(即,在端口80上并响应所选主机名),因为您没有访问web服务器配置的权限。
您将需要一个VPS(GoDaddy提供了它们,但这不是它们的核心业务;Linode和Rackspace是其他选项),或者一个专门支持Django的共享主机(例如Dreamhost),或者一个应用程序主机(Heroku或Google App Engine)。我个人推荐Heroku,特别是如果你对建立和维护自己的web服务器没有信心的话。
根据Godaddy的说法,他们可以使用Python 2.7.2,如果你有他们的web主机的豪华版,你可以编程。按照我的理解,当您在第一行键入python安装的目录位置时,python就会工作:
但是,当我试着测试的时候,它不起作用。我在我的帐户上启用了SSH。我试着用油灰连接,如果我运行它,它就会工作。但是,问题是,网站只是没有出现。
我试着检查Python的版本。我发现它是Python2.4.3。所以,我试图找到他们的目录。我发现可能是:
或者
我尝试了每一个目录,并改变了所有可能的语法。什么都不管用。
以下是支持Python的文章: http://support.godaddy.com/help/article/7254/can-i-use-python-272-with-my-hosting-account?locale=en
所以,根据我的观察,这两个答案都可能是正确的:
但在下结论之前,我已经请求将Godaddy Python服务器更改为2.7。一旦发现我会更新这篇文章的。
更新: Godaddy声称您可以在虚拟专用服务器或专用服务器上运行Python,我认为这是可能的,因为您运行的是自己的计算机。从技术上讲,你可以在自己的电脑上安装任何东西。所以,如果Python运行,Django可能会运行,但我怀疑他们是否知道如何支持它。
作为将来的参考,我想你已经开始。。。
可以在GoDaddy主机上使用Django,按照他们的建议使用VirtualEnv。Python2.7是本机安装的,工作正常,尽管它不是要运行的默认版本。
这对我来说是一个豪华的帐户,虽然我仍然建议任何人谁肯定想使用Django寻求替代托管。戈达迪不是很友好,我不确定一切都会继续工作。
编辑
我意识到,在没有常规mod戥ux选项的情况下,如何让Django在Apache中正常运行可能会有些混乱。这是我的方法:
在~/code(注意python路径)中创建以下脚本“django_cgi.py”!):
在~/html中,使用以下变体创建或编辑.htaccess文件:
最后,创建~/html/mysite.cgi,如下所示:
这是过度简化但功能性的,应该会导致对任何页面或文件的每个请求都传递给Django。
这种运行的原因是GoDaddy只为我们不能使用的旧版本Python提供本地CGI支持,所以我们必须使用我们的虚拟环境。虽然我们不能在CGI脚本中直接使用它,但幸运的是,我们可以运行shell脚本并手动调用它。mod_rewrite规则只是确保所有流量通过Django。
参考资料 Django with FastCGI
Start of Django Tutorials
VirtualEnv
相关问题 更多 >
编程相关推荐