我使用python bottle& amp设置我的服务器mod_wsgi的 我的瓶子脚本都是用python3.4编写的,但apache2服务器默认使用python2.7.6?
有没有办法让python3.4成为apache2上的默认python
我现在有股票
答案 0 :(得分:11)
我认为您已使用此命令为python2安装了mod_wsgi:
sudo apt-get install libapache2-mod-wsgi
但是如果你想使用mod_wsgi和python3,你应该用这个命令安装正确的mod_wsgi:
sudo apt-get install libapache2-mod-wsgi-py3
答案 1 :(得分:1)
要基于每个用户更改python版本,只需在用户的主目录中创建别名即可。打开~/.bashrc
文件并添加新别名以更改默认的python可执行文件:
alias python='/usr/bin/python3.4'
完成上述更改后,请重新登录或获取.bashrc
文件:
$ . ~/.bashrc
检查你的默认python版本:
$ python --version
Python 3.4.2
更改系统范围内的python版本
要在系统范围内更改python版本,我们可以使用update-alternatives命令。以root用户身份登录,首先列出所有可用的python备选方案:
# update-alternatives --list python
update-alternatives: error: no alternatives for python
以上错误消息表示update-alternatives命令未识别任何python替代方案。出于这个原因,我们需要更新我们的替代表并包括python2.7和python3.4:
# update-alternatives --install /usr/bin/python python /usr/bin/python2.7 1
update-alternatives: using /usr/bin/python2.7 to provide /usr/bin/python (python) in auto mode
# update-alternatives --install /usr/bin/python python /usr/bin/python3.4 2
update-alternatives: using /usr/bin/python3.4 to provide /usr/bin/python (python) in auto mode
--install
选项采用多个参数,从中可以创建符号链接。最后一个参数指定优先级意味着,如果没有进行手动替代选择,则将设置具有最高优先级编号的替代方案。在我们的例子中,我们为/usr/bin/python3.4
设置了优先级2,因此/usr/bin/python3.4
被update-alternatives命令自动设置为默认的python版本。
# python --version
Python 3.4.2
接下来,我们可以再次列出所有python替代方案:
# update-alternatives --list python
/usr/bin/python2.7
/usr/bin/python3.4
从现在开始,我们可以随时使用以下命令在上面列出的python替代版本之间切换并输入选择号:
# update-alternatives --config python