centos mod wsgi?centos8官网下载教程
这篇文章给大家聊聊关于centos mod wsgi,以及centos8官网下载教程对应的知识点,希望对各位有所帮助,不要忘了收藏本站哦。
django用什么部署(django项目部署到本地)
导读:本篇文章首席CTO笔记来给大家介绍有关django用什么部署的相关内容,希望对大家有所帮助,一起来看看吧。
Django应用的容器化部署
部署使用容器化的方式,以容器的方式来运行。
首先,创建Dockerfile:
接着,进入Dockerfile文件目录,执行命令构建镜像,镜像名称是myproject:v1:dockerbuild-tmyproject:v1.
构建完成后,可以查看到我们刚刚创建的镜像:
最后,启动容器:dockerrun-d-p9999:8000-v/home/myproject/:/myproject/--namemyproject1myproject:v1
如何用Nginx部署Django
如果你在windows上开发的django项目。部署的话,需要分三步。
第一步:在linux下下载python用的依赖包,搭建python环境。将windows下的项目复制到linux下,使用django自带服务进行启动。
第二步:下载uwsgi模块并且编写配置文件来替代django自带的服务模块。
第三步:下载nginx包,编译安装。然后创建配置文件,配置nginx启动django项目的信息。然后访问即可。
如何使用WSGI部署Django
如何使用Apache和mod_wsgi部署Django?
用Apache和mod_wsgi部署Django项目是一个第三方的,测试的方法来得到Django生产环境。
mod_wsgi是一个Apache模块,可以托管任何PythonWSGI应用程序,包括Django。Django将与支持mod_wsgi的任何版本的Apache一起工作。
官方mod_wsgi文档是太棒了!它是所有关于如何使用mod_wsgi的细节的来源。您可能需要先从安装和配置文档开始。
Basicconfiguration?
一旦您安装并激活了mod_wsgi,请编辑Apache服务器的httpd.conf文件并添加以下内容。如果你的Apache版本低于2.4,请将Requireallgranted替换成Allowfromall并在上一行添加Orderdeny,allow.
WSGIScriptAlias//path/to/mysite.com/mysite/wsgi.py
WSGIPythonPath/path/to/mysite.com
Directory/path/to/mysite.com/mysite
Fileswsgi.py
Requireallgranted
/Files
/Directory
WSGIScriptAlias行中的第一个位是您要在其上(/指示根URL)的服务应用程序的基本URL路径,第二个位置是“WSGI文件“-见下面-在您的系统上,通常在您的项目包(在本例中mysite)。这告诉Apache使用该文件中定义的WSGI应用程序来提供给定URL下面的任何请求。
TheWSGIPythonPathlineensuresthatyourprojectpackageisavailableforimportonthePythonpath;inotherwords,thatimportmysiteworks.
TheDirectorypiecejustensuresthatApachecanaccessyourwsgi.pyfile.
接下来,我们需要确保这个wsgi.py与WSGI应用程序对象存在。从Django版本1.4起,startproject将为您创建一个;否则,您需要创建它。请参阅WSGIoverviewdocumentation以获取您应该放入此文件的默认内容,以及您可以添加到其中的其他内容。
警告
如果多个Django站点在单个mod_wsgi进程中运行,则所有这些站点将使用首先运行的设置。这可以通过改变:
os.environ.setdefault("DJANGO_SETTINGS_MODULE","{{project_name}}.settings")
在wsgi.py中:
os.environ["DJANGO_SETTINGS_MODULE"]="{{project_name}}.settings"
或者通过usingmod_wsgidaemonmode,并确保每个站点在其自己的守护进程中运行。
使用虚拟机?
Ifyouinstallyourproject’sPythondependenciesinsideavirtualenv,you’llneedtoaddthepathtothisvirtualenv’sdirectorytoyourPythonpathaswell.如果你的python项目在一个依赖虚拟机的python环境中,你需要将路径添加虚拟机的site-packages目录到你的python路径Todothis,addanadditionalpathtoyourWSGIPythonPathdirective,withmultiplepathsseparatedbyacolon(:)ifusingaUNIX-likesystem,orasemicolon(;)ifusingWindows.如果目录路径的任何部分包含空格字符,则必须引用WSGIPythonPath的完整参数字符串:
WSGIPythonPath/path/to/mysite.com:/path/to/your/venv/lib/python3.X/site-packages
请确保为您的virtualenv指定正确的路径,并将正确的Python版本替换为python3.X。python3.4)。
采用mod_wsgi守护进程模式?
“Daemon模式”是运行mod_wsgi的推荐模式(在非Windows平台上)。需要通过WSGIDaemonProcess和WSGIProcessGroup指令来实现Django实例运行在守护进程组中如果使用守护程序模式,则上述配置所需的进一步更改是您不能使用WSGIPythonPath;而应使用WSGIDaemonProcess的python-path选项,例如:
WSGIDaemonProcessexample.compython-path=/path/to/mysite.com:/path/to/venv/lib/python2.7/site-packages
WSGIProcessGroupexample.com
如果您要在子目录(本示例中为)中投放您的项目,可以将WSGIScriptAlias添加到上面的配置中:
WSGIScriptAlias/mysite/path/to/mysite.com/mysite/wsgi.pyprocess-group=example.com
Seetheofficialmod_wsgidocumentationfordetailsonsettingupdaemonmode.
Servingfiles?
Django不提供文件本身;它将该作业留给您选择的任何Web服务器。
我们建议使用单独的Web服务器(即不运行Django的服务器)来提供媒体。这里有一些很好的选择:
Nginx
Apache的精简版本
但是,如果您无法选择在与Django相同的ApacheVirtualHost上提供媒体文件,则可以将Apache设置为将某些网址用作静态媒体,而将其他网址用于Django的mod_wsgi接口。
ThisexamplesetsupDjangoatthesiteroot,butexplicitlyservesrobots.txt,favicon.ico,anyCSSfile,andanythinginthe/static/and/media/URLspaceasastaticfile.所有其他网址将使用mod_wsgi:
Alias/robots.txt/path/to/mysite.com/static/robots.txt
Alias/favicon.ico/path/to/mysite.com/static/favicon.ico
Alias/media//path/to/mysite.com/media/
Alias/static//path/to/mysite.com/static/
Directory/path/to/mysite.com/static
Requireallgranted
/Directory
Directory/path/to/mysite.com/media
Requireallgranted
/Directory
WSGIScriptAlias//path/to/mysite.com/mysite/wsgi.py
Directory/path/to/mysite.com/mysite
Fileswsgi.py
Requireallgranted
/Files
/Directory
IfyouareusingaversionofApacheolderthan2.4,replaceRequireallgrantedwithAllowfromallandalsoaddthelineOrderdeny,allowaboveit.
Servingtheadminfiles?
当django.contrib.staticfiles位于INSTALLED_APPS中时,Django开发服务器会自动提供管理应用程序(以及任何其他已安装的应用程序)的静态文件。但是,当您使用任何其他服务器布局时不是这样。您负责设置Apache,或您使用的任何Web服务器,以提供管理文件。
管理文件位于Django发行版的django/contrib/admin/static/admin中。
Westronglyrecommendusingdjango.contrib.staticfilestohandletheadminfiles(alongwithaWebserverasoutlinedintheprevioussection;thismeansusingthecollectstaticmanagementcommandtocollectthestaticfilesinSTATIC_ROOT,andthenconfiguringyourWebservertoserveSTATIC_ROOTatSTATIC_URL),butherearethreeotherapproaches:
在文档根目录中创建一个指向管理静态文件的符号链接(这可能需要Apache配置中的+FollowSymLinks)。
使用如上所示的Alias指令,将适当的网址(可能是STATIC_URL+admin/)别名到管理文件的实际位置。
复制admin静态文件,使它们存在于Apache文档根目录下。
AuthenticatingagainstDjango’suserdatabasefromApache?
Django提供了一个处理程序,允许Apache直接对Django的身份验证后端进行身份验证。请参阅mod_wsgiauthenticationdocumentation。
IfyougetaUnicodeEncodeError?
如果您正在利用Django的国际化功能(请参阅Internationalizationandlocalization),并且您打算允许用户上传文件,则必须确保用于启动Apache的环境配置为接受非-ASCII文件名。如果未正确配置环境,则在调用类似于os.path中的函数时,将触发UnicodeEncodeError异常,该函数包含非ASCII字符。
为了避免这些问题,用于启动Apache的环境应包含类似于以下内容的设置:
exportLANG='en_US.UTF-8'
exportLC_ALL='en_US.UTF-8'
请查阅您的操作系统的文档以获取适当的语法和位置来放置这些配置项;/etc/apache2/envvars是Unix平台上的常见位置。将这些语句添加到环境后,重新启动Apache。
目录
如何使用Django与Apache和mod_wsgi
基本配置
使用virtualenv
使用mod_wsgi守护程序模式
提供文件
提供管理文件
对来自Apache的Django用户数据库进行身份验证
如果您得到UnicodeEncodeError
浏览
上一页:如何使用WSGI部署
下一步:对来自Apache的Django用户数据库进行身份验证
你在这里:
Django1.8.2.dev20150513143415documentation
部署Django
如何使用Django与Apache和mod_wsgi
如何使用WSGI进行部署
“操作指南”
这一页
显示源
快速搜索
输入搜索字词或模块,类或函数名称。
最后更新:
2015年5月13日
Django部署——uwsgi+Nginx(超详细)
环境:
python3.6
centos7
Django1.11
用Django写了个小网站,只能在自己本地跑一跑!这怎么行?听说可以部署在云服务器上,这样别人就可以访问了!
从哪儿开始?就从Django开始吧!老规矩,按步骤:
这里不讲Django项目实施过程,假设你已经写了一个Django项目,并且在本地127.0.0.1:8000能够跑起来。喏,给你个参考,项目大概长这样:
也就是项目目录下的settings.py文件,主要强调几个地方:
①关闭DEBUG模式:
②修改ALLOWED_HOSTS:
③配置静态文件存放路径:
修改好配置之后执行:
这个没什么说的。。。在自己的云服务器上装好这两个工具
安装好uwsgi后最好验证一下,验证方法:
创建一个test.py文件:
启动uwsgi服务器:
如果可以正常启动而不报错那就应该没问题,不放心的话再在终端验证一下:
在uwsgi.ini里进行如下配置:
找到nginx的配置文件夹,centos7的nginx配置文件在/etc/nginx下,该路径下有一个nginx.conf总配置文件,还有两个文件夹./conf.d、./default.d,我们将nginx.conf复制一份到conf.d文件夹下,命名为nginx.conf(或者项目名.conf)进行如下修改(根据中文注释进行相应配置即可):
进入uwsgi.ini文件夹下执行:
在终端执行:
参考资料:
刘江的博客
博客园
知乎问答
无名Blog
自强学堂Django教程
Django文档
empty_xlBlog
[Django]部署(一)
Django部署也挺方便,我用过以下三种方式,各自适合特定的场景。
不要看不起Django自带server,一个命令解决部署问题,虽然性能不高,但有些场景,这个方法最合适。runserver0.0.0.0:80就能在局域网里开启Django服务,适合用户不多,性能要求不要的场景。
可以采用Apache+mod_wsgi或者IIS+wfastcgi部署,相比之下IIS更方便一些,毕竟微软自带的工具。
使用最广泛的就是nginx+uwsgi的部署方式,教程很多。另外现在docker一键部署,更是省时省力。
如何在阿里云上部署django网站
Django的部署建议放在Linux系统上。比较易于新手入门的Linux服务器发布版应该是Ubuntu,aliyun上目前最新版本应该是16.04,建议64位。
如果你是新网站,没有多少访问量,建议1核1内存或者2G内存,1-2M的宽带就足够了。最近双十一还有活动。
部署,安装Nginx:
apt?install?nginx
不知道你的Django项目是python2还是Python3,如果选用uwsgi部署方式,除了uwsig需要装一个uwsgi-plugin-python或者uwsgi-plugin-python3
剩下的看官方文档的uwsgi部署部分基本就ok了,因为全写实在太长了,还有的uwsgi配置文件。
结语:以上就是首席CTO笔记为大家整理的关于django用什么部署的全部内容了,感谢您花时间阅读本站内容,希望对您有所帮助,更多关于django用什么部署的相关内容别忘了在本站进行查找喔。
如何在apache上面启动django(2023年最新解答)
导读:很多朋友问到关于如何在apache上面启动django的相关问题,本文首席CTO笔记就来为大家做个详细解答,供大家参考,希望对大家有所帮助!一起来看看吧!
如何将apache与django连接起来
目前,Apache和mod_python是在生产服务器上部署Django的最健壮搭配。
mod_python是一个在Apache中嵌入Python的Apache插件,它在服务器启动时将Python代码加载到内存中。
Django需要Apaceh2.x和mod_python3.x支持。
Apache的配置参见:
使用mod_python部署
1.为了配置基于mod_python的Django,首先要安装有可用的mod_python模块的Apache。
2.然后应该有一个LoadModule指令在Apache配置文件中。它看起来就像是这样:
LoadModulepython_module/usr/lib/apache2/modules/mod_python.so
3.配置Apache,用来定位请求URL到Django应用:
VirtualHost*:80
ServerName
Location"/mysite1"
SetHandlerpython‐program
PythonHandlerdjango.core.handlers.modpython
SetEnvDJANGO_SETTINGS_MODULEmysite1.settings
PythonAutoReloadOff
PythonDebugOff
PythonPath"['/var/www/html/mysite1']+sys.path"
PythonInterpretermysite1
/Location
Location"/mysite2"
SetHandlerpython‐program
PythonHandlerdjango.core.handlers.modpython
SetEnvDJANGO_SETTINGS_MODULEmysite2.settings
PythonAutoReloadOff
PythonDebugOff
PythonPath"['/var/www/html/mysite2']+sys.path"
PythonInterpretermysite2
/Location
[......]
/VirtualHost
它告诉Apache,任何在/mysite这个路径之后的URL都使用Django的mod_python来处理。它将DJANGO_SETTINGS_MODULE的值传递过去,使得mod_python知道这时应该使用哪个配置。
查看mod_python文档获得详细的指令列表。
4.重启Apache,查看:"target="_blank":
/etc/init.d/apache2restart
使用mod_wsgi部署
1.下载安装mod_wsgi模块,生成mod_wsgi.so和wsgi.conf
2.在配置中加载模块:
LoadModulepython_module/usr/lib/apache2/modules/mod_wsgi.so
3.修改Apache配置文件httpd.conf
VirtualHost*:80
ServerName
DocumentRoot/var/www/html/mysite
WSGIScriptAlias//var/www/html/mysite/apache/django.wsgi
Directory/
Orderdeny,allow
Allowfromall
/Directory
Directory/apache
Allowfromall
/Directory
/VirtualHost
4.创建并配置wsgi的配置文件:
#filename:mysite.apache.django.wsgi
importos,sys
#CalculatethepathbasedonthelocationoftheWSGIscript.
apache_configuration=os.path.dirname(__file__)
project=os.path.dirname(apache_configuration)
workspace=os.path.dirname(project)
sys.path.append(workspace)
os.environ['DJANGO_SETTINGS_MODULE']='mysite.settings'
os.environ['PYTHON_EGG_CACHE']='/tmp'
importdjango.core.handlers.wsgi
application=django.core.handlers.wsgi.WSGIHandler()
printsys.stderr,sys.path
shellchmoda+xdjango.wsgi
5.修改Django项目配置文件settings.py:
DATABASES={
'default':{
'ENGINE':'django.db.backends.mysql',
'NAME':'mysite',
'USER':'admin',
'PASSWORD':'admin123',
'HOST':'127.0.0.1',
'PORT':'3306',}
}
TEMPLATE_DIRS=(
'/var/www/html/mysite/templates',
)
6.重启Apache,访问
/etc/init.d/apache2restart
如果解决了您的问题请采纳!
如果未解决请继续追问!
centos怎么在apache中设置django
mod_wsgi.so最好是windows平台下的。如果你下载的版本不对,当然不能链接。如果有可能,你可以用apache的工具将mod_wsgi重新编译一下,应该可以的。
如何将django用apache2部署在亚马逊的服务器上
使用mod_python部署
1.为了配置基于mod_python的Django,首先要安装有可用的mod_python模块的
Apache。
2.然后应该有一个LoadModule指令在Apache配置文件中。它看起来就像是这样:
LoadModulepython_module/usr/lib/apache2/modules/mod_python.so
3.配置Apache,用来定位请求URL到Django应用:
VirtualHost*:80
ServerName
Location"/python1"
SetHandlerpython‐program
PythonHandlerdjango.core.handlers.modpython
SetEnvDJANGO_SETTINGS_MODULEpython1.settings
PythonAutoReloadOff
PythonDebugOff
PythonPath"['/var/www/html/python1']+sys.path"
PythonInterpreterpython1
/Location
Location"/python2"
SetHandlerpython‐program
PythonHandlerdjango.core.handlers.modpython
SetEnvDJANGO_SETTINGS_MODULEpython2.settings
PythonAutoReloadOff
PythonDebugOff
PythonPath"['/var/www/html/python2']+sys.path"
PythonInterpreterpython2
/Location
[......]
/VirtualHost
它告诉Apache,任何在/python这个路径之后的URL都使用Django的mod_python来处理。
它将DJANGO_SETTINGS_MODULE的值传递过去,使得mod_python知道这时应该使用哪个配置。
查看mod_python文档获得详细的指令列表。
4.重启Apache,查看:"target="_blank":
/etc/init.d/apache2restart
使用mod_wsgi部署
1.下载安装mod_wsgi模块,生成mod_wsgi.so和wsgi.conf
2.在配置中加载模块:
LoadModulepython_module/usr/lib/apache2/modules/mod_wsgi.so
3.修改Apache配置文件httpd.conf
VirtualHost*:80
ServerName
DocumentRoot/var/www/html/python
WSGIScriptAlias//var/www/html/python/apache/django.wsgi
Directory/
Orderdeny,allow
Allowfromall
/Directory
Directory/apache
Allowfromall
/Directory
/VirtualHost
4.创建并配置wsgi的配置文件:
#filename:python.apache.django.wsgi
importos,sys
#CalculatethepathbasedonthelocationoftheWSGIscript.
apache_configuration=os.path.dirname(__file__)
project=os.path.dirname(apache_configuration)
workspace=os.path.dirname(project)
sys.path.append(workspace)
os.environ['DJANGO_SETTINGS_MODULE']='python.settings'
os.environ['PYTHON_EGG_CACHE']='/tmp'
importdjango.core.handlers.wsgi
application=django.core.handlers.wsgi.WSGIHandler()
printsys.stderr,sys.path
shellchmoda+xdjango.wsgi
5.修改Django项目配置文件settings.py:
DATABASES={
'default':{
'ENGINE':'django.db.backends.mysql',
'NAME':'python',
'USER':'admin',
'PASSWORD':'admin123',
'HOST':'127.0.0.1',
'PORT':'3306',}
}
TEMPLATE_DIRS=(
'/var/www/html/python/templates',
)
6.重启Apache,访问
/etc/init.d/apache2restart
我有个linux的虚拟主机,我想运行django网站,怎么办?
我是linux主机,我这样在本地运行django
1在终端进入django项目的文件夹,是有manage.py的那个目录
2然后运行pythonmanage.pyrunserver
就可以跑起来了
ubuntu14.04下django怎么部署到apache
参考一下:
Apache是全球使用率最高的、开源的一个Web服务端软件,现在介绍一下如何在Ubuntu14.04上安装和配置Apache。
工具/原料
Ubuntu14.04
方法/步骤
命令行安装Apache
打开"终端窗口",输入"sudoapt-getinstallapache2"--回车--输入"root用户的密码"--回车--输入"y"--回车,安装完成
默认的网站根目录的路径
Apache安装完成后,默认的网站根目录是"/var/www/html",在终端窗口中输入"ls/var/www/html"--回车--在网站根目录下有一个"index.html"文件,在ie浏览器中输入"127.0.0.1"--回车,就可以打开该页面。
Apache的第一个配置文件apache2.conf的路径
在终端窗口中输入"ls/etc/apache2"--回车--有一个"apache2.conf"的配置文件。
Apache的第二个配置文件000-default.conf的路径
在终端窗口中输入"ls/etc/apache2/sites-available"--回车--有一个"000-default.conf"的配置文件。
修改网站的根目录
1、在终端窗口中输入"sudovi/etc/apache2/apache2.conf"--回车--找到"Directory/var/www/"的位置--更改"/var/www/"为新的根目录就可以了。
2、在终端窗口中输入"sudovi/etc/apache2/sites-available/000-default.conf"--回车--找到"DocumentRoot/var/www/html"的位置--更改"/var/www/html"为新的根目录就可以了,这里我把它更改为"/var/www/"。
重启Apache
在终端窗口中输入"sudo/etc/init.d/apache2restart"--回车--"输入root用户密码"--回车--重启成功。
复制"index.html"文件到"/var/www"目录下
在终端窗口中输入"cp/var/www/html/index.html/var/www/"--回车--输入"ls/var/www"--回车--有一个"index.html"文件,复制成功。
测试更改网站根目录是否成功
在"火狐浏览器"中输入"127.0.0.1"--能访问到"index.html"文件--更改成功
结语:以上就是首席CTO笔记为大家介绍的关于如何在apache上面启动django的全部内容了,希望对大家有所帮助,如果你还想了解更多这方面的信息,记得收藏关注本站。
如何在CentOS6上安装Python2.7和Python3.3
如何在CentOS 6上同时安装Python 2.7和Python 3.3
本文将介绍如何在CentOS 6上安装Python 2.7和3.3。下面以Python 2.7.6和Python 3.3.5为例进行说明,但本人实测该教程同样适合于Python3.4.0.
CentOS 6自带了Python 2.6.6(CentOS 7则自带了Python 2.7)和一些非常好用的功能,如yum。但是,注意不要随便升级自带的Python以免yum不可用。新版本将安装在/usr/local目录下以避免和自带的版本冲突。
虽然“我”只在64位的CentOS 6.5进行了尝试,但该教程应该适用于所有的CentOS 6版本(本人按此教程在CentOS 7上亦成功安装Python3.4)。
下面的示例命令您最好以root身份运行或者在命令前加sudo赋予权限。但注意,若不是以root身份执行的话,make与make install最好分开执行,并且都在前面加sudo,连着写,如sudo make&& make install的话会在make install过程中报权限不足问题,因为sudo不作用于&&后面的make install。
安装前准备
编译Python之前您最好先安装一系列的开发工具和一些拓展库,虽然不是必须的,但这样Python才能依赖这些工具和拓展库展示它强悍的功能。下面是利用yum进行工具和拓展库安装的示例命令,直接copy执行即可(注意部分命令显示不全,但可以通过移动光标查看和复制)。
yum groupinstall"Development tools"
yum install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel
该考虑的因素
在您编译和安装Python之前,有些东西您是应该知道或考虑的。如下。
Unicode编码
Python编码问题历史悠久,但不用过多关注,知道它目前支持Unicode编码即可(Python3中默认的)。考虑到兼容性等原因,除非有特殊的理由,您最好配置下Python 3.2和更早的版本,使其支持UTF-32编码,虽然会增加小小的内存代价。在Python 2.7中您可以通过在configure时添加选项--enable-unicode=ucs4进行配置,而在Python 3.2中是--with-wide-unicode选项。
Shared library(动态共享库)
目前大部分的Linux系统自带的Python都是以共享库的方式编译的,此外,某些第三方工具例如mod_wsgi和Blender,没有Python的共享库还运行不了,所以,您最好还是把Python编译成动态共享库吧。为了以共享库方式编译Python,您必须指明共享库的路径。您有两种选择:
在configure命令后面添加:LDFLAGS="-Wl,-rpath/usr/local/lib"从而将库路径直接编译进Python中。
以记事本方式打开/etc/ld.so.conf,然后在文件最后添加新行:/usr/local/lib。紧接着运行命令/sbin/ldconfig更新动态链接器。添加后的文件内容在CentOS 6.5如下:
/etc/ld.so.conf
1
2
include ld.so.conf.d/*.conf
/usr/local/lib
使用“make altinstall”而不是make install
切记,在安装自定义版本的Python时,make altinstall命令是必须的!如果您使用一般的make install命令,呵呵,您将会在解压编译的目录下看到两个命名一样但版本不同的python,这有可能会导致一些意想不到的bug哦,具体是什么作者没说,我也不知道。
下载,编译,安装Python
如下命令可用于下载、编译和安装Python。注意,如果您打算安装后手动修改/etc/ld.so.conf文件以更新动态链接器,那么下面的 LDFLAGS参数您就可以去掉了。
1
2
3
4
5
6
7
8
9
10
11
12
13
# Python 2.7.6:
wget
tar xf Python-2.7.6.tar.xz
cd Python-2.7.6
./configure--prefix=/usr/local--enable-unicode=ucs4--enable-shared LDFLAGS="-Wl,-rpath/usr/local/lib"
make&& make altinstall(此处切记,要么以root运行,要么分开执行!)
# Python 3.3.5:
wget
tar xf Python-3.3.5.tar.xz
cd Python-3.3.5
./configure--prefix=/usr/local--enable-shared LDFLAGS="-Wl,-rpath/usr/local/lib"
make&& make altinstall(此处切记,要么以root运行,要么分开执行!)
执行上述命令之后,您可以在/usr/local/bin/python2.7或/usr/local/bin/python3.3中找到新安装的Python。而Python 2.6.6则可能在/usr/bin/python,/usr/bin/python2或/usr/bin/python2.6找到。
下载和安装Setuptools+ pip
Setuptools早已取代Distribute成为Python官方的拓展包管理器,以用于从Python Package Index安装拓展功能包。不同版本的Python需要的Setuptools版本不同。建议您也通过Setuptools安装pip,它提供了一些额外在安装拓展功能包时很有用的功能。
以下的命令可用于安装最新版Setuptools和 pip。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
# First
get the setup script for Setuptools:
wget
# Then
install it for Python 2.7 and/or Python 3.3:
python2.7ez_setup.py
python3.3ez_setup.py
# Now
install pip using the newly installed setuptools:
easy_install-2.7pip
easy_install-3.3pip
# With
pip installed you can now do things like this:
pip2.7install[packagename]
pip2.7install--upgrade[packagename]
pip2.7uninstall[packagename]
安装的拓展功能包在/usr/local/lib/pythonX.Y/site-packages/中可以找到(X.Y是Python的版本号)。
接下来干嘛?
如果您使用 Python 2.7,强烈建议您安装virtualenv并学会使用它,它可用于创建独立的 Python环境。如果您使用 Python 3.3的话就可以省心些,它已被内置了。
不同的 Python运行环境(也叫沙盒)可以有自己的 Python版本和拓展功能包,就是说不同的Python安装和运行的目录不同,也可以为每个版本的Python安装对应的名称一样但版本不同的拓展包。这在开发多个功能不同的项目或在同一个项目中需要用到不同版本的Python是会很有用的。
创建您第一个独立的Python环境
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
# Install
virtualenv for Python 2.7 and create a sandbox called my27project:
pip2.7installvirtualenv
virtualenv-2.7my27project
# Use
the built-in pyvenv program in Python 3.3 to create a sandbox called my33project:
pyvenv-3.3my33project
# Check
the system Python interpreter version:
python--version
# This
will show Python 2.6.6
# Activate
the my27project sandbox and check the version of the default Python interpreter in it:
sourcemy27project/bin/activate
python--version
# This
will show Python 2.7.6
deactivate
# Activate
the my33project sandbox and check the version of the default Python interpreter in it:
sourcemy33project/bin/activate
python--version
# This
will show Python 3.3.5
deactivate
当你使用 virtualenv创建一个运行沙盒时,它会自动在沙盒环境中为您安装setuptools和 pip(听起来不错,可以还没尝试过)。但如果您使用 pyvenv的话,您就必须自己动手安装了。也简单,激活沙盒之后通过运行下载的z_setup.py文件去安装即可。