apachemodpython
⑴ 怎么让apache2能运行python
在Ubuntu中,采用 sudo apt-get install apache2 安装apache服务后,是不会带Apxs,需要安装 apache2-dev。其命令是:sudo apt-get install apache2-dev
安装完后查看安装的路径: whereis apxs2
如果在安装Mod_pythond的make过程出现这样到错误:fatal error: Python.h: No such file or directory,可以安装python2.7-dev(装的是V2.7)解决,命令为:sudo apt-get install python2.7-dev
Apxs的默认位置:usr/bin/apxs,但在ubuntu11版本中已经是usr/bin/apxs2
Mod_python模块的安装:
现在可以正式安装Mod_python模块了。
1.首先从Mod_pythod(http://modpython.org/)官网上下载文件,其文件名为:mod_python-3.3.1.tgz(我下的是3.3.1版本的)。然后,对这个文件进行解压操作:tar -zxvf /home/cosmos/mod_python-3.3.1.tgz (其中的目录可以自己放置)。
2.解压后通过cd mod_python-3.3.1命令进入mod_python-3.3.1这个文件夹。
3.进行Apxs目录配置, 命令为:./configure --with-apxs=/usr/bin/apxs2。
4.进行Python本地配置,命令为:./configure --with-python=/usr/bin/python2.7(自己装的Python是2.7版本的)。
7.安装完成后会在/usr/lib/apache2/moles/生成mod_python.so这个文件,需要把它加载到apache2的配置文件中。修改/etc/apache2/httpd.conf文件,增加这么一行内容:LoadMole python_mole /usr/lib/apache2/moles/mod_python.so。然后,再重启apache服务就可以了。
⑵ ubuntu搭建apache+python+django+mysqlweb开发环境
在Ubuntu12.04系统下,首先确保安装了默认版本的Python 2.7.3。为了构建一个完整的Web开发环境,还需要安装Apache、mod_python、Django和MySQL。
首先,安装Apache服务器。执行命令:
sudo apt-get install apache2
接着,重启Apache以确保安装成功,命令如下:
sudo /etc/init.d/apache2 restart
打开浏览器输入http://localhost或http://127.0.0.1,页面显示"It works!",说明Apache已成功安装。默认情况下,Apache在/var目录下创建了一个名为www的子目录,所有Web文件都应放置在此目录中,以便通过浏览器访问。
接下来配置Apache服务器。总配置文件位于apache2.conf,一般不建议修改。自定义公共配置存于httpd.conf文件中。每个站点的配置文件通过软链接指向sites-enabled目录。
安装mod_python,通过命令:
sudo apt-get install libapache2-mod-python
确保已将Python模块加入到启用列表中,如未完成此步,执行:
sudo ln -s /etc/apache2/mods-available/python.load /etc/apache2/mods-enabled/
创建mod_python的配置文件python.conf,内容如下:
AddHandler mod_python .py
PythonHandler test
PythonDebug On
将配置文件加入启用列表:
sudo ln -s /etc/apache2/mods-available/python.conf /etc/apache2/mods-enabled/
重启Apache服务器并测试。创建/var/www目录下的文件test.py,内容为:
from mod_python import apache
def handler(req):
req.content_type="text/plain"
req.write("hello!")
return apache.OK
在浏览器中输入http://localhost/test.py,显示“hello!”,表示mod_python已成功运行。
安装Django,首先从官方网站下载安装包,然后执行以下步骤:
tar xzvf Django-*.tar.gz
cd Django-*
sudo python setup.py install
如果安装后在/usr/local/bin目录下未找到django-admin.py文件,需手动将其复制至此目录,该文件位于/usr/local/lib/python*/dist-packages/django/bin。
Django默认端口为8000,只监听本地连接,若需更改端口或监听IP,使用命令:
python manage.py runserver 端口号 或 IP:端口号
创建项目使用命令:
django-admin.pystartproject 项目名
进入项目目录,使用命令:
python manage.py runserver
访问http://127.0.0.1:8000/,将看到“Welcometo Django”页面。
本地化设置在setting.py文件中,例如:
TIME_ZONE = 'Asia/Shanghai'
LANGUAGE_CODE = 'zh-cn'
将Django部署至Apache,修改/etc/apache2/sites-available/default文件,加入相应的配置。若显示“no mole named modpython”,下载并复制modpython.py文件到/usr/local/lib/python2.7/dist-packages/django/core/handlers目录下。
重启Apache服务器,测试成功。
最后,安装MySQL数据库,执行:
sudo apt-get install mysql-server mysql-client
还需安装几个文件以配合Django使用,包括:
1. 如果提示未安装mysql_config,运行:
sudo apt-get install libmysqlclient-dev
2. 若MySQL通过apt-get安装,还需安装python-dev包,提供Python.h头文件:
sudo apt-get install python-dev
3. 安装MySQLdb库:
sudo apt-get install python-mysqldb
测试安装,命令:
import MySQLdb
若无错误,说明已成功安装MySQL-python。
数据库配置在Django的配置文件settings.py中,内容如下:
DATABASE_ENGINE = ''
DATABASE_NAME = ''
DATABASE_USER = ''
DATABASE_PASSWORD = ''
DATABASE_HOST = ''
DATABASE_PORT = ''
配置要点包括:
数据库引擎、数据库名、用户名、密码、主机和端口号。
若要将网站部署到默认目录/var/www,先修改此目录的读写权限:
sudo chmod 777 /var/www
这样,整个Web开发环境就搭建完成。
⑶ 我已经安装python3.3.4+apache2.2,现在如何选择mod_python的版本
Python的版本太高了,mod_python并不支持Python 3000以上的版本,http://modpython.org/ 建议可以选择其它web服务器,比如Nginx、Lighttpd之类的,现在国产的Kangle扩展性也很强。如果是采用框架,比如Django,在调试的时候可以直接使用Django内置的Python Web服务器
⑷ 如何在windows下安装reviewboard
reviewboard作为一个开源的代码复查工具,已经受到越来越多的开发人员喜爱。然而,也是由于其开源的特性,使得其的安装也过于linux化。在linux下,只需要下载安装指定的包即可,包之间的依赖会自动地进行处理。然而在windows下,就需要安装人员手动地处理各种依赖情况。况且reviewboard官方对于如何在windows下安装也没有一个直接的step by step操作,如果仅是按照官方的操作进行,是绝对安装不了的。
问题主要有几个,python版本,phthon mysql的windows支持,python与apache的整合。 这几天问题主要即是因为windows的开发和linux的开发不一致,在windows下并没有最新或直接支持的相应版本造成的。
我通过一次次的努力,终于在windows下安装成功,并能与apache成功整合。现将整个安装过程,记录下来,对其他有兴趣使用reviewboard的人员也有帮助。 首先,下载以下的安装包,具体下载地址请google,这里只是将包名称,截图下来,相信大家根据名称即会找到相应组件。
接下来,即是按照步骤一步一步地进行安装了。 安装python 2.5,使用python-2.5.4.msi进行安装,建议安装在C:\Python25下面,即默认的安装路径。 安装easy_install工具,使用setuptools-0.6c11.win32-py2.5.exe进行安装,默认安装路径。 设置环境变量,将C:\ Python25和C:\ Python25\Scripts,设置在path变量中。 安装patch工具,该用于用于生成两个文件的diff文件。使用patch-2.5.9-7-setup.exe进行安装。建议安装在C:\GnuWin32目录。安装完之后,将bin目录,添加到系统的环境变量当中(注意是系统环境变量,不是个人环境变量)。 安装memcached工具,该工具用于在reviewboard过程中进行数据缓存处理。使用memcached-1.2.6-win32-bin.zip,将其解压在c:\目录下,并在cmd下运行 memcached.exe –d install 将其安装成服务,并在服务中将其启动。 在cmd下执行 easy_install python-memcached 以安装python-memcached,该工具为python与memcached交互的工具包。此命令会联网进行安装,因此必须要联网。 安装Python Imaging Library,此用于安装review board所需要使用的图形处理工具。使用PIL-1.1.7.win32-py2.5.exe进行安装。 安装Pycrypto,此用于Reviewboard支持ssh的仓库访问。使用pycrypto-2.3.win32-py2.5.zip进行安装。 安装reviewboard,在cmd下执行以下命令进行安装 easy_install ReviewBoard 安装数据库支持,在本文中,使用mysql作为底层数据库,因此安装python的mysql支持,使用MySQL-python-1.2.2.win32-py2.5.exe进行安装。 安装svn支持,svn用于连接svn与我们的svn代码库。这里需要svn的客户端,以及python对svn的支持。安装svn客户端,使用CollabNetSubversion-client-1.6.16-1.win32.exe进行安装。安装python的svn支持,使用py25-pysvn-svn161-1.7.0-1177.exe进行安装。 安装python与apache之间的整合,在本安装过程中使用了apache作为web服务器。对于apache2.2,使用mod_python-3.3.1.win32-py2.5-Apache2.2.exe进行安装;对于apache2.0,使用mod_python-3.3.1.win32-py2.5-Apache2.0.exe进行安装。 开启reviewboard,在命令行下,输入以下命令,用于安装reviewboard: rb-site install 安装位置 接下来,填写相应的信息,需要注意的是,在安装过程中会选择数据库。Reviewboard会自动创建相应的表,但不会创建数据库,这就需要我们在之前已经将数据库创建好了。其次,如果想要将reviewboard与现有的apache相整合(即将reviewboard安装在特定的子目录中,则在填写Root Path时,填写一个相对路径,如/xxx/) 安装成功之后,在相应的目录下,会出现以下目录信息。
我们关注conf目录下的信息,进入到conf目录,将文件apache-modpython.conf中的信息部分到已有apache配置文件中,并进行配置。
如最终apache中的reviweboard配置文件如下所示: LoadMole python_mole moles/mod_python.so //加载相应的模块 <Location "/reviewboard/"> PythonPath "['e:/reviewboard/conf'] + sys.path" SetEnv DJANGO_SETTINGS_MODULE reviewboard.settings SetEnv PYTHON_EGG_CACHE "e:/reviewboard/tmp/egg_cache" SetEnv HOME "e:/reviewboard/data" SetHandler mod_python PythonHandler django.core.handlers.modpython PythonAutoReload Off PythonDebug Off # Used to run multiple mod_python sites in the same apache PythonInterpreter reviewboard_reviewboard </Location> # Serve static media without running it through mod_python # (overrides the above) <Location "/reviewboard/media"> SetHandler None </Location> <Location "/reviewboard/errordocs"> SetHandler None </Location> <Directory "e:/reviewboard/htdocs"> AllowOverride All </Directory> # Alias static media requests to filesystem Alias /reviewboard/media "e:/reviewboard/htdocs/media" Alias /reviewboard/errordocs "e:/reviewboard/htdocs/errordocs" 配置好之后,即可重装启动apache,进行reviewboard访问了。