简单步骤ubuntu安装apache2+php5+python支持

只讲安装步骤,debian server也是一样的。

1)vps安装好,python通过apt-get install python安装好。如果以前有nginx这样的server。apt-get remove –purge "packagename"就可以完全删除了,注意这样会把conf也删掉,有需要的要做备份。

2)apt-get install apache2 php5-mysql libapache2-mod-php5 mysql-server

如果你不需要mysql,可以把有mysql的去掉。

3)重启一下apache,/etc/init.d/apache2 restart或者/etc/init.d/apache2 reload

4)查看/etc/apache2/这个目录,是apache2的配置目录,主要是apache2.conf和mod-available, sites-avaliable,在我安装目录下,httpd.conf是空的。

5)注释掉apache2.conf中include sites-available一行,直接把vhost写入空的httpd.conf。当然你也可以通过修改sites-available来实现vhost。修改后使用a2ensite configfilename或者a2dissite configfilename来激活或者关闭。

6)对于rewrite这个必要模块,可以通过a2enmod rewrite来激活。其它可以使用的mods可以在mod-available看到。

7)到此步位置php应该已经可用,在apache的脚本目录(我这里是/var/www)下面放一个xxx.php,内容为<?php phpinfo(); ?>,然后通过http://xxx.com/xxx.php就可以看到运行结果了。

8)然后通过apt-get install libapache2-mod-wsgi安装wsgi,当然你的python应该是已经可用的。

9)修改配置文件,加入一行指向你的脚本(参考http://code.google.com/p/modwsgi/wiki/QuickConfigurationGuide )

WSGIScriptAlias /myapp /varl/www/wsgi-scripts/myapp.wsgi

如果你的脚本是在apache脚本目录之外,需要修改allow选项。在上面那个网址有一个完整配置示例,我在这里重新粘贴下:

<VirtualHost *:80>
        ServerName www.example.com
        ServerAlias example.com
        ServerAdmin webmaster@example.com
        DocumentRoot /usr/local/www/documents
        <Directory /usr/local/www/documents>
            Order allow,deny
            Allow from all
        </Directory>      

  WSGIScriptAlias /myapp /usr/local/www/wsgi-scripts/myapp.wsgi

   <Directory /usr/local/www/wsgi-scripts>
              Order allow,deny
              Allow from all
       </Directory>
</VirtualHost>

10)在/usr/local/www/wsgi-scripts/下建立一个myapp.wsgi,内容如下(Py格式问题请自行调整):

def application(environ, start_response):
        status = ‘200 OK’
        output = ‘Hello World!’

  response_headers = [(‘Content-type’, ‘text/plain’),
                        (‘Content-Length’, str(len(output)))]
        start_response(status, response_headers)

  return [output]

11)访问http://xxx.com/myapp就可以看到hello world输出,有问题自己google吧。

12)如何使用Py的bottle框架,很简单:

http://bottle.paws.de/page/tutorial

from bottle import route, run, debug, template, request, validate, error, default_app

@route(‘/:name’)
      def index(name=’World’):
          return ‘<b>Hello %s!</b>’ % name

application = default_app()

修改前面的myapp.wsgi就可以看到bottle运行结果了。

《简单步骤ubuntu安装apache2+php5+python支持》有3个想法

  1. 1,配置python麻烦,不如mod_wsgi方便。2,没有geoip这个功能 3,rewrite加404修改总是有问题。 总而言之,就是为了图省事才不想折腾nginx

发表评论