How to upgrade the version of Python used by Apache?
Question
On a Red hat box, I upgraded Python from 2.3 to 2.6.4 and changed the symlink to python
so when I type in python
the 2.6.4 interpreter comes up.
However my .py file works from the command-line, but not in the browser. It seemed like a sys.path
issue so I opened the file in a browser and printed out sys.path
.
Surprisingly, my sys.path
is different when called from a browser than when called from a command-line. Because the paths are all referring to 2.3, I believe Apache is picking up Python 2.3 rather than the new 2.6.4 version I installed.
How do I make Apache use Python 2.6.4?
Solution
If you're using mod_python
or mod_wsgi
, you should reinstall them as they've probably been built to the python version you had when they were first installed on the system (which in your case appears to be Python 2.3).
OTHER TIPS
Apache isn't calling python directly, so the path is irrelevant. You will probably want to build yourself a new mod_wsgi to link against python 2.6.4.
On RH box Apache probably runs as root user. Login as root and see which version of python root sees.
HIH
..richie