如何在cpanel上安装django

spy*_*pin 5 django ftp cpanel

我需要将文件放在哪个目录中?
我尝试了public_html但是当我把文件放在那里并点击setup.py时,它没有启动脚本.

mik*_*725 15

由于以下原因,在cPanel(共享主机)上运行Django应用程序可能不是最好的选择:

  • 大多数共享主机提供程序不允许您安装需要编译的自定义库.然而,你仍然可以创建virtualenvpip安装包,只要它们不需要编译任何东西(例如Django)
  • 性能.根据我的经验,可以在共享主机上部署一个简单的Django应用程序,但它不是非常可靠,并且执行效果不佳.

然而,并不是说这是不可能的.这些粗略的步骤应该足够准确,以指导您走正确的道路.我还没有这么做,所以可能会有错误.

  • 首先,您必须具有SSH访问权限
  • 登录您的帐户并为您的django项目创建virtualenv

    $ cd ~
    $ wget https://pypi.python.org/packages/source/v/virtualenv/virtualenv-1.9.1.tar.gz
    $ tar -zxvf virtualenv-1.9.1.tar.gz
    $ python virtualenv-1.9.1/virtualenv.py djangovevn
    
    Run Code Online (Sandbox Code Playgroud)
  • 将virtualenv bin文件夹添加到路径(内部.bash_profile)

    export PATH="/home/<username>/djangovenv/bin:$PATH" # inside .bash_profile
    
    # activate .bash_profile
    $ source .bash_profile
    
    Run Code Online (Sandbox Code Playgroud)
  • 然后pip安装项目所需的一切.确保首先激活virtualenv

    $ source ~/djangovevn/bin/activate
    $ pip install django
    
    Run Code Online (Sandbox Code Playgroud)
  • 像往常一样配置Django.确保DEBUGFalse

  • 内部public_html创造index.fcgi.确保使用virtualenv Python路径.Django 在这里讲述了这个.

    !/home/<username>/djangovenv/bin/python
    import sys, os
    
    # add projects directory to the path so that
    # settings from the project can be imported
    sys.path.insert(0, "/home/<username>/path/to/project")
    
    # Switch to the directory of your project #
    os.chdir("/home/<username>/path/to/project")
    
    # Set the DJANGO_SETTINGS_MODULE environment variable #
    os.environ['DJANGO_SETTINGS_MODULE'] = "project.settings"
    
    
    # Run the fastcgi instance #
    from django.core.servers.fastcgi import runfastcgi
    runfastcgi(method="threaded", daemonize="false")
    
    Run Code Online (Sandbox Code Playgroud)
  • 配置index.fcgiinpublic_html/.htaccess

    AddHandler fcgid-script .fcgi
    RewriteEngine On
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^(.*)$ index.fcgi/$1 [QSA,L]
    
    Run Code Online (Sandbox Code Playgroud)
  • 激活fastcgi

    $ cd ~/public_html
    $ touch index.fcgi
    $ chmod 0755 .htaccess
    $ chmod 0755 index.fcgi
    
    Run Code Online (Sandbox Code Playgroud)
  • 全部完成!

但是这种方法会让你疯狂得快.Apache并不适用于此,并且这种方法不是很受欢迎.这应该在开始时足够好,但是因为你将获得更高级的部署Django应用程序,你应该考虑使用一些其他托管服务提供商,它允许更多的灵活性,如WebFaction或heroku.