我是Python的新手,并且一直试图在我的服务器上安装Django框架。对于这个问题,我似乎无法在网上任何地方找到正确方向的答案或提示。
我在LiquidWeb上有一个VPS,我正在尝试在该服务器上安装。我一直在关注Django安装指南:https://docs.djangoproject.com/en/1.4/topics/install/#installing-official-release
我正在尝试安装稳定版本,而不是开发版本,并尝试手动安装并通过PIP - 两者都给我相同的错误,如下所示:
root @ host [/] #sudo pip install Django
下载/解压缩Django
下载Django-1.4.1.tar.gz(7.7Mb):已下载7.7Mb
运行包Django的setup.py egg_info
Traceback (most recent call last):
File "<string>", line 14, in ?
File "/build/Django/setup.py", line 69, in ?
version = __import__('django').get_version()
File "django/__init__.py", line 15
parts = 2 if version[2] == 0 else 3
^
SyntaxError: invalid syntax
命令python setup.py egg_info失败,错误代码为1 / build / Django 存储完整的登录/root/.pip/pip.log
我正在使用Python 2.4.3并尝试安装Django 1.4.1。
非常感谢任何帮助,提前谢谢!
答案 0 :(得分:8)
等等,你在使用Python 2.4 ?! Django 1.4 dropped support for 2.4。您必须升级Python才能使其工作。如果您正在升级,也可以使用最新的Python 2版本(2.7)。
错误的确切原因是安装脚本使用三元条件运算符(true_expr if cond else false_expr
),我认为这是在Python 2.5中引入的。虽然您可以通过编辑脚本来解决这个问题,但类似的事情可能会遍及Django代码库,因此您必须向后移植整个框架。
答案 1 :(得分:3)
让我猜〜
也许错误不是关于你的Django或python的版本。
如果你有正确的版本。这仍然会发生。
问题可能是由你的mod_wsgi造成的。
运行这个:
ldd /usr/lib/httpd/modules/mod_wsgi.so
如果退还这个 'libpython2.4.so.1.0 =&gt; /usr/lib/libpython2.4.so.1.0(0x00b32000)'
linux-gate.so.1 => (0x00da0000)
libpython2.4.so.1.0 => /usr/lib/libpython2.4.so.1.0 (0x00b32000)
libpthread.so.0 => /lib/libpthread.so.0 (0x00d7b000)
libdl.so.2 => /lib/libdl.so.2 (0x007cf000)
libutil.so.1 => /lib/libutil.so.1 (0x00f6f000)
libm.so.6 => /lib/libm.so.6 (0x0086e000)
libc.so.6 => /lib/libc.so.6 (0x00150000)
/lib/ld-linux.so.2 (0x00133000)
您需要使用param重新编译mod_wsgi.so '--with-蟒=的/ usr / local / bin中/ python2.7'