mod_wsgi在多个Python版本下配置apache
博客专区 > buglife 的博客 > 博客详情
mod_wsgi在多个Python版本下配置apache
buglife 发表于4年前
mod_wsgi在多个Python版本下配置apache
  • 发表于 4年前
  • 阅读 2438
  • 收藏 2
  • 点赞 0
  • 评论 2

移动开发云端新模式探索实践 >>>   

摘要: 也许你会遇到这样的问题:Linux默认安装了Python2.6,在当下一些框架总是不支持低版本的Python,不得不去安装较高版本的Python,如Python2.7。然而当高版本的安装后,apache依然找到的是Python2.6,此刻便是头疼时刻。不妨看看这篇文档。

前言

也许你会遇到这样的问题:Linux默认安装了Python2.6,在当下一些框架总是不支持低版本的Python,不得不去安装较高版本的Python,如Python2.7。然而当高版本的安装后,apache依然找到的是Python2.6,此刻便是头疼时刻。不妨看看这篇文档。当然这里是需要你保证在输入python --version之后输出的版本好是高版本的。那么剩下的问题我们不妨就在这里探讨一番,

问题

安装Python2.7后当再去运行之前基于python2.6环境配置的项目在apache以及mod_wsgi下可以正常运行的项目,却报出如下异常信息:

版本依赖出错,看了下详细信息在运行apache的时候既加载了Python2.7的site-packages又加载了Python2.6的site-packages

按照逻辑来寻找原因:

  • 之所以会加载python2.7的信息i,是因为我在httpd.conf中配置了python-path

  • python2.6的信息则是系统默认Python版本

  • 严重的错误是直接输出的Python版本为2.6的

解决问题

针对上面的问题进行一系列排查:首先不应该出现Python2.6的相关信息,因为在系统中已经处理过Python的版本,即使在终端python --version输出的也是2.7版本。apache是一个独立的模块,自然不会导致与Python交互的错误。唯一与Python打交道的一个中介组件便是mod_wsgi。

由于mod_wsgi是针对不同版本Python设计实现的,那么更换了Python版本之后自然需要更换一下mod_wsgi的版本。

之前使用的是Python2.6+mod_wsgi3.3,此时将mod_wsgi换成4.1版本的。激动的时刻出现了,可以正常运行。

  • 打赏
  • 点赞
  • 收藏
  • 分享
共有 人打赏支持
buglife
粉丝 78
博文 125
码字总数 44248
作品 4
评论 (2)
Lambert_lin
牛逼
buglife

引用来自“Lambert_lin”的评论

牛逼
不得已啊,遇到问题就得解决
×
buglife
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: